- ベストアンサー
シートが別の場合の関数
sheet1~3のA列に商品名、B列に数量があった場合。 sheet1~3の商品名を参照してB列の数量をsheet4に足したいものを 出したいですがどうしたらいいでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
商品が65536以内に収まるなら、1シートに収めるのが理想ですが、 131072を超える商品があるという前提で回答します。 条件 sheet1~3のA列の商品名に重複がなく、それぞれ昇順にならんでいること。 ※できれば商品コードというユニークな値が望ましいです。 ■sheet4のA列に商品名を入力するとB列に数量を表示する VLOOKUPとIF文を使用して、B列に以下の式を入力。 =IF(ISNA(VLOOKUP(B1,Sheet1!$A:$B,2,0))=FALSE, VLOOKUP(B1,Sheet1!$A:$B,2,0), IF(ISNA(VLOOKUP(B1,Sheet2!$A:$B,2,0))=FALSE, VLOOKUP(B1,Sheet2!$A:$B,2,0), IF(ISNA(VLOOKUP(B1,Sheet3!$A:$B,2,0))=FALSE, VLOOKUP(B1,Sheet3!$A:$B,2,0),"該当なし"))) ※上記の式は、最初のシートから検索していきます。 ■補足 VLOOKUP(B1,Sheet1!$A:$B,2,0) B1をキーとしてSheet1!$A:$Bを抽出の対象として、A列を検索し、 一致した行の2列目の値を返す。 最後の0はキーとの照合は完全一致の意味。 ISNA(VLOOKUP(B1,Sheet1!$A:$B,2,0))=FALSE VLOOKUPは、一致するものがない場合、#N/Aを返すので、ISNAで確認、 #N/Aなら真(TRUE)、そうでない(一致した)なら偽(FALSE)を返す。