- ベストアンサー
vlookup関数で求めた数値の合計
excelで20行まで入力できる発注書を作っています。 vlookup関数で商品コードを入力すると、商品名と単価は自動で表示されています。 単価×購入数量で商品毎に購入金額を求め、総合計を自動計算させたいのですが、、、 発注書には必ず20品目入力されるわけではありません。 この入力されない商品行の合計金額は#valueとなっています。 結果として総合計も#valueとなってしまいます。 どなたか総合計を求める方法をご教示ください。 宜しくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
VLOOKUP関数で検索しているとの事ですので、商品マスターとなる表があると思います。 その表に商品コード 0 商品名 0 単価 0 となる一行を追加 これでとりあえず#valueは出なくなると思います。 発注書とのことで、0 を印刷したくなければ条件付書式でセルの値が0に等しいときにフォントカラーを背景と同じになるようするってのでいかがでしょう?
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
質問者が、セルにどういう式を入れているかを質問に書かないで、うまくいかないと訴えてみても、どうしようもない。結局回答者まる抱えの回答を求めるタイプになっている。良く考えること。 私の回答は関数の質問の回答はほとんど模擬実例を入れてますよ。 質問者が手を抜いてどうする。 ーー 下記が良いかどうかは色々方法があると思うが 例データ H1:J5 に検索表 コード 商品名 単価 1 a 3 2 b 2 3 c 1 4 d 4 5 e 5 ーー A1:E11 商品コード 商品名 単価 数量 金額 2 b 2 1 2 5 e 5 3 15 第4行ー第10行は略 E11に17(式の結果) A列 式なし B列B2に =IF(A2="","",VLOOKUP(A2,$H$1:$J$5,2,FALSE)) B10まで式複写 C列C2に =IF(B2="","",VLOOKUP(A2,$H$1:$J$5,3,FALSE)) C10まで式を複写 D列に 式なし F列に =IF(OR(C2="",D2=""),"",C2*D2) F10まで式を複写 ここはやり方で分かれそう。 ーー F11は=SUM(E2:E10) これでA1:E11のセルに、エラーや、0や、合計が出せないなどというのは、起こらないようだが。 上記で何か難しい細工や関数を使ってますか。使ってないですよ。
お礼
教えてGOOへの質問が初めてだったもので。。。 ごめんさない。今後もっと詳細に記述します。 にもかかわらず丁寧なご教示ありがとうございました。
- hallo-2007
- ベストアンサー率41% (888/2115)
一種のエラー処理ですが、Vlookup関数の部分に =IF(”商品コード”="","",”今のVlookup関数”) と、商品コードが空白であれば空白、空白でない時に関数を実行 するように、IF文で置き換えてみてください。
お礼
なるほど、こんな手もあるんですね? 勉強になります。 ありがとうございました。
「購入金額」の式を =単価*購入数量 でなく、=PRODUCT(単価,購入数量) とすればOKでは?
お礼
ご教示の通りにやったらできました。 ありがとうございました。
お礼
なるほど。 >条件付書式でセルの値が0に等しいときに・・・・・ そこまで思い浮かばなかったです。 ありがとうございました。