• ベストアンサー

エクセル:複数の参照先から結果をだしたい場合

添付の画像のようにするにはどうしたらいいでしょうか。 検索値にあるデータが、A列またはB列どちらか一方に当てはまる場合、 Aで一致しなかったらBから検索するして結果を返すということはできるのでしょうか・・。 ご教授いただければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 MATCH関数の検索範囲となる列を、IF関数を使って切り替える様にすると良いと思います。(IF関数以外にも切り替える方法はありますが、「A列またはB列」の2パターンだけという事であればIF関数の方が便利です) =IF($F2="","",IFERROR(INDEX($C:$C,MATCH($F2,IF(COUNTIF($A:$A,$F2),$A:$A,$B:$B),0)),"該当無し"))  尚、上記の関数ではA列とB列のどちらにも検索値と同じデータが存在していなかった場合には、「該当無し」と表示する様になっておりますが、もし「該当無し」ではなく数値の0を表示させる様にしたい場合には、上記の関数の中の "該当無し" となっている部分を 0 に変えて、 =IF($F2="","",IFERROR(INDEX($C:$C,MATCH($F2,IF(COUNTIF($A:$A,$F2),$A:$A,$B:$B),0)),0)) の様にして下さい。

mmmtter
質問者

お礼

できました!!データが無い場合のケースも対応でき感謝です!!

その他の回答 (2)

  • f272
  • ベストアンサー率46% (8469/18132)
回答No.2

私が式を作るならこんな感じ =INDEX($C$2:$C$7,IFERROR(MATCH(F2,$A$2:$A$7,0),MATCH(F2,$B$2:$B$7,0)))

mmmtter
質問者

お礼

できました!シンプルで私にも分かりやすかったです。ありがとうございました。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.1

IF関数でA列に検索値の有無を確認して条件分岐する数式を組み立てます。 G2=IF(COUNTIF(A:A,F2),VLOOKUP(F2,A:C,3),VLOOKUP(F2,B:C,2)) F列が空欄のときや検索値がA列、B列共に存在しないときはどうするかも必要になるでしょう。 その時は更にIF関数で入れ子構造にしてください。

mmmtter
質問者

お礼

できました!シンプルで私にも分かりやすかったです。ありがとうございました。

関連するQ&A