- ベストアンサー
エクセルで見積書を作成したいのですが
エクセルで見積書を作成したいのですが 商品名 個数(単位) 単価 金額 1 A ア 10000 2 B イ 10000 3 C ウ 10000 4 D エ 10000 のようにリストを作成して、 実際には 商品名 個数(単位) 単価 金額 2 B イ 10000 1 A ア 10000 3 C ウ 10000 1 A ア 10000 のように、リストの中から選択できるように したいのです。 ネットや本を見ながらやってみましたが、 初心者の為、上手くいきません。 詳しい方、教えてください。 宜しくお願いします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
追加質問への回答 請求書の例をみると検査値である商品名はB列なのにIF文ではC列を条件式にしているようですが?とりあえず例の通り商品名がB列、一行目はタイトルとすると、C2セルに =VLOOKUP(B2,商品リスト!A:B,2,0) と入れて、下方へコピー。 商品名が一致しないと#N/Aになります。スペースや半角全角の違いもNGです。 空白のエラー表示は、印刷されなければ良いなら、ページ設定のシートタブのセルのエラーを<空白>にしてあげればよい。 シート上で消すなら=if(B2="","",~か、条件付き書式で白い文字に。
その他の回答 (6)
- CMLT
- ベストアンサー率40% (143/357)
まず訂正から 商品名の選択がA列でない場合は =IF($A2="","",VLOOKUP($A2,LIST!$A:$D,COLUMN(B1),0)) としてしまいましたが、A2の部分は変更する必要があります。 ドロップダウンリストですが、,で区切って直接選択項目を入力していく方法と範囲指定する方法とあり、範囲してする場合は同一シート内に必要です。その為、データを別シートに置いた場合はシート内に=で引っ張っておくとよいでしょう。 ドロップダウン自体はデータの入力規則を開いて入力値の種類をリストにし、元の値に直接入力か範囲をドラッグで指定します。 場所はメニュー-データ-入力規則、2007ならデータタブ内のデータの入力規則にあります。
お礼
追加質問です。 IF関数はようやく、理解することが出来ました。 現在商品名をドロップダウンリストで選択できるようにしています。 請求書 1 A列 B列 C列 D列 E列 2 追加工事 商品名 単価 数量 価格 3 和室 AAAAAAA 100 40m2 SUM 4 和室 BBBBBBB 400 50m2 SUM 5 和室 CCCCCCC 200 50m2 SUM 6 洋室 CCCCCCC 200 80m2 SUM 7 洋室 GGGGGGG 500 10m2 SUM 商品リスト A列 B列 1 商品名 単価 2 AAAAAAA 100 3 BBBBBBB 400 4 CCCCCCC 200 がある場合、 請求書でドロップダウンリストから商品名選択、同時に単価表示 させるのは無理でしょうか? =IF(C2="","",IF(C2=商品リスト!A2,商品リストB2,IF(C2=商品リスト!A3,商品リスト!B3,IF(・・・・・・ のように4~5商品まで、IF関数だけで連動?させることは出来たのですが、数が50くらいあるので、大変かなと…。 ※皆さんにご指示いただいたVLOOKUPはなぜかエラーがでます。 入力ミスでしょうか…。 物覚えが悪くすいません。 再度、お力をお貸しください。 お願いします。
- CMLT
- ベストアンサー率40% (143/357)
No.4氏 >VLOOKUP関数を使うには、商品リストで商品番号を設定して 数値でなくても文字列でもOKです。つまり重複がなければ商品名でも大丈夫です。 >リストのほうは、番号順に並んでいる必要があります。 検査値がTRUEか1か省略の場合は確かにそうですが、0かFAULSEの場合はこの限りでは無く、一致しなければエラー値を返すだけなので、昇順に並び変える必要はありません。その為、他の回答者はみな省略せずに0としています。 質問者は初心者と言っておられます。マクロの作成をすすめるなら、実例を提示、もしくは参照URLを張り付けましょう。自信ありの割に後半は回答になっていません。
- mktyoshii
- ベストアンサー率0% (0/2)
補足しますが、VLOOKUP関数を使うには、商品リストで商品番号を 設定して、これが、リストのほうは、番号順に並んでいる必要があります。 請求書作成用セルに、関数を入れておいて、請求書ができたら いったんこれを、別の場所に数値のみコピー貼り付けして 別の場所に保存し、入力欄をクリアするようにマクロを作成したほうがいいでしょう。
- gyouda1114
- ベストアンサー率37% (499/1320)
- subaru130
- ベストアンサー率20% (66/326)
数字は商品名ですか? ABCDは個数ですか? アイウエは単価ですか? 10000は金額ですか?
補足
はい。その通りです。
- CMLT
- ベストアンサー率40% (143/357)
別シート(LIST)のA列~D列にデータがあるとします。 A2で商品名を選択し、B2、C2、D2に固定値を反映させるとします。 vlookupを使う場合の例 B2セル: =IF($A2="","",VLOOKUP($A2,LIST!$A:$D,COLUMN(),0)) として、C2、D2、及び下方へコピー 商品名の選択がA列でない場合は =IF($A2="","",VLOOKUP($A2,LIST!$A:$D,COLUMN(B1),0)) として下さい。 他にoffset、matchを使ったりデータベースを使ったりという方法もあります。
お礼
回答ありがとうございます。 まずこの方法で、チャレンジしてみます! ありがとうございました。
お礼
あっB列の間違いですね(^^; 回答ありがとうございます。 上記の通り入力してみます。 ありがとうございました。
補足
遅くなりました。 ようやく思い通りのものができそうです。 皆様に、ポイントをつけれないのが残念ですが 本当にありがとうございました。