- 締切済み
エクセルにおける複数条件抽出
すみません、教えて下さい。 エクセルで複数の条件に合ったセルを返したいです。 どんな計算式になりますか? 教えてください。 例) 4 10 12 22 A 100 120 140 150 B 5 8 10 11 C 29 29 29 18 D 1 3 1 4 上記のような表の中から 『Aで10の場合』は“120” 『Cで12の場合』は“29” と言った感じで、フィルターを使わないで数字を出す計算式って ありますか? ちなみに、Aと10は別々のセルです。 2個のセルを一つの表と照らし合わせて、その結果を 1つのセルに返したい。 知っている方、申し訳御座いませんが宜しくお願いします
- みんなの回答 (7)
- 専門家の回答
みんなの回答
- mu2011
- ベストアンサー率38% (1910/4994)
次の方法は如何でしょうか。 =OFFSET($A$1,MATCH("A",A:A,0)-1,MATCH("10",1:1,0)-1) 因みに条件の"A"、"10"は文字列としていますがセル表記の方が良いかと思います。
- imogasi
- ベストアンサー率27% (4737/17069)
例 データ A1:E15 列記号とあわせてA,B,C・・を振るのがエクセルでの常識的と思うので 下記例にした。 質問のようにしてもINDEX,MATCH関数で出来るが。 A B C D 1 2 3 4 100 5 29 1 5 6 7 8 9 10 120 8 29 3 11 12 140 10 29 1 13 22 150 11 18 4 ーーーーー 条件 H,I[列 J列 A 10 120 B 4 5 C 12 29 ーー 式 J1は =INDEX($B$2:$E$50,$I1,MATCH($H1,$B$1:$E$1,0)) 式を下方向に複写 結果 上記J列
A B C D E F G H I J K 1 4 10 12 22 A で 10 → 120 2 A 100 120 140 150 C で 12 → 29 3 B 5 8 10 11 4 C 29 29 29 18 5 D 1 3 1 4 K1: =VLOOKUP(G1,A$2:E$5,MATCH(I1,A$1:E$1,0),FALSE)
- maac777
- ベストアンサー率50% (43/86)
NO3.です 申し訳ない・・・へんなところが絶対参照になっちゃってますね。
- maac777
- ベストアンサー率50% (43/86)
例示された表がA1:E5の範囲、条件「A」がG1セル「12」がH1セルにあるとして =VLOOKUP($G$1,A1:E5,MATCH(H1,A1:E1)) でいいのでは?
- Cupper
- ベストアンサー率32% (2123/6444)
MATCH関数とVLOOKUP関数、HLOOKUP関数、OFFSET関数、INDEX関数を組み合わせても可能ですが いっそ、縦と横を入れ替えて 列と行を一致させて表を作ってはどうですか A B C D 1 : 4 100 005 029 001 : 10 120 008 029 003 11 12 140 010 029 001 : 22 150 011 018 004 など これならINDIRECT関数で直接指定可能です =INDIRECT("A"&"4")→ A4 → 100 =INDIRECT("D"&"12") → D12 → 1
- zawax
- ベストアンサー率50% (3/6)
記述されている表を必ず使わなくてはならいですか? 条件が二つあるならば1つにしてしまいましょう。 A04 100 A10 120 A12 140 A22 150 B04 5 B10 8 : : : と全部縦に記述して、Vlookup使えばいけますよね?