- ベストアンサー
エクセルで表を指定データを抽出する
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
無い場合空白でいいのでしたら、この関数でできるはずです。 やってみて、うまくいかなかったら補足して下さい。 A表、B表、C表、位置がバラバラなので、名前を付けてやった方がいいと思います。
その他の回答 (5)
- SI299792
- ベストアンサー率47% (789/1648)
コート 1、発注数量 4、等ない数字を入れた場合はどうしますか。 また、A表は、発注数量10が2つありますがどうしますか。 とりあえず、この場合空白とします。 (ない数字を入れた場合も対応したい場合、バージョンでやり方が違います。どうすればいいかとバージョンを補足して下さい) 名前を付けない場合、 D3: =IFERROR(VLOOKUP($C3,CHOOSE($A3,$A$11:$C$16,$G$4:$I$8,$E$12:$G$18),COLUMN()-2,0),"") 右下へコピペ。 で可能です。 しかしこれでは、解り難いし、表の位置が変更になった時に数式を変更しなければなりません。 可能ならば、 A11:C16 を選択、名前ボックス(赤□)に「A表」 G4:I8 を選択、名前ボックスに「B表」 E12:G18 を選択、名前ボックスに「C表」を入力します。 この作業をすれば、 D3: =IFERROR(VLOOKUP($C3,CHOOSE($A3,A表,B表,C表),COLUMN()-2,0),"") 右下へコピペ。 の数式が可能になります。
補足
発注数量 4、等ない数字を入れた場合はどうしますか。 ※この場合は空白とする。 また、A表は、発注数量10が2つありますがどうしますか。 とりあえず、この場合空白とします。 ※この場合は最上段行を適用する。 (ない数字を入れた場合も対応したい場合、バージョンでやり方が違います。どうすればいいかとバージョンを補足 して下さい) バージョンはエクセル2013です。 よろしくお願いします。
- kkkkkm
- ベストアンサー率66% (1742/2617)
名前のA表,B表,C表のABCは半角で、もしくは名前の管理で名前の部分からそれぞれ式の「"」内にコピペしてください。
- kkkkkm
- ベストアンサー率66% (1742/2617)
> 追加内容どおり入力しましたが、該当なしと表示されます。 "A表","B表","C表" それぞれの範囲に 数式タブで名前の定義を利用して "A表","B表","C表"と名前を付けます。 を実施してますでしょうか
- kkkkkm
- ベストアンサー率66% (1742/2617)
回答No.1の追加です。 表に無い値を入れたときに#N/Aが出るのを防ぐ場合は =IFERROR(VLOOKUP($C3,INDIRECT(CHOOSE($A3,"A表","B表","C表")),COLUMN(B1),FALSE),"該当なし") としてください。
補足
回答ありがとうございます。 追加内容どおり入力しましたが、該当なしと表示されます。 再度検証をお願いします。
- kkkkkm
- ベストアンサー率66% (1742/2617)
"A表","B表","C表" それぞれの範囲に 数式タブで名前の定義を利用して "A表","B表","C表"と名前を付けます。 D3に =VLOOKUP($C3,INDIRECT(CHOOSE($A3,"A表","B表","C表")),COLUMN(B1),FALSE) として下と右にコピーします。 E列は上記をコピーしなくても E3に =C3*D3 で下にコピーでもいけると思います
お礼