- ベストアンサー
エクセル 2つの検索項目があるVlookup
Vlookupの場合、1つの検索項目ですが 例えば A列が検索データに合致、そのうえ、B;列も別の検索データに合致した場合、 C列のデータを表示させるみたいな手法はありますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
A列の検索値がF1セルに、B列の検索値がG1セルにあり、C列のデータが数値(日付などを含む)データなら、Excel2007以降のバージョンをご使用なら以下のような関数で表示できます(該当データが複数ない場合)。 =SUMIFS($C$2:$C$100,$A$2:$A$100,F1,$B$2:$B$100,G1) 文字列の場合は以下のような関数で表示できます(A列とB列を連結した文字列に重複が無い場合)。 =INDEX(C:C,MIN(INDEX((F1&G1<>$A$2:$A$100&$B$2:$B$100)*10000+ROW($A$2:$A$100),)))&"" #上記の回答は、比較的簡単に表示できる関数の一例を示したものですが、実際のデータによって使用する数式を変更する必要があります。 また、エクセルのバージョンによって使用できる関数が異なりますので、ご質問の際には元データの種類を含めて、ご使用のエクセルのバージョンを必ず明記するようにしましょう。
その他の回答 (2)
- shintaro-2
- ベストアンサー率36% (2266/6245)
indirect と vlookupとを組み合わせます http://pc.nikkeibp.co.jp/pc21/tech/excel36/27/ そうでなければ、条件1を縦に、条件2を横に検索して交点の値を返します。 http://pc.nikkeibp.co.jp/pc21/tech/excel36/26/
お礼
indilectをはじめて知りました、なんとかこれで工夫してます ありがとうございました。
- Cupper-2
- ベストアンサー率29% (1342/4565)
素ではありません。 MATCH関数を組み合わせてやってみましょう。 …ごめんなさい。使い方のアドバイスをする時間が無くなりましたw
お礼
MATCH関数と他の方の回答のINDILECTの組み合わせでやってみようと思います、 これで無理なら2007へバージョンアップします ありがとうございました
お礼
ありがとうございます、残念ながら2003でした、 このさいせっかくなので2007以降にアップグレードしてやって見たいと思います。 ありがとうございました