• ベストアンサー

EXCELのIF文

教えて下さいm(__)m Aのシートの1列目と、Bのシートの1列目を比べ、同じ情報であれば、 Bシートの2列目にその情報が書き出されるように関数を入力したいのです。 たぶん、IF文で出来そうな気がするのですが、調べてもなかなか判りませんでした(;_; 宜しくお願いします。 例) ●Aシート 有村  赤 明石  黄色 池田  緑 齋藤  白 ●Bシート 有村  「赤」 と出力したい 池田  「緑」 と出力したい 遠藤  「 」 空白でOK

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

  • ベストアンサー
  • oresama
  • ベストアンサー率25% (45/179)
回答No.2

この手の類はVLOOKUP関数がいいと思います。 シートA、BそれぞれA列とB列にデータがあるとして、 シートB1に =VLOOKUP(A1,シートA!$A$2:$B$4,2,0) 以下B3までコピー。 これだと遠藤さんのところはエラーになるので、 =IF(ISERROR(VLOOKUP(A1,シートA!$A$2:$B$4,2,0)),"",VLOOKUP(A1,シートA!$A$2:$B$4,2,0)) で、お望みの結果になると思います。 呪文(関数)の意味はHELP等を参照してください。

yuki696
質問者

お礼

求めていた通りになりました。 ISERRORも初めて見るものだったので、調べてみたのですが、エラー回避できますね!すごいっ!! ありがとうございましたm(__)m

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

一例です。 =IF(COUNTIF(Aシート!A:A,A1),INDEX(Aシート!B:B,MATCH(A1,Aシート!A:A,0)),"") 因みにIF関数では出来ない事はないですがVLOOKUPとかINDEX-MATCH組み合わせを利用する方法が一般的です。

yuki696
質問者

お礼

ありがとうございます! こちらでも思い描いた通りの結果になりました!エクセルって幅広い… ただ、VLOOKUPを利用するほうが確かに利用しやすいですね。。 参考になりましたm(__)m

  • singlecat
  • ベストアンサー率33% (139/418)
回答No.1

IFでは無理です。 VLOOKUP関数を使ってみてください。 ※回答書くのは簡単ですが、まずは調べてみて下さい。

yuki696
質問者

お礼

ありがとうございますm(__)m VLOOKUP関数は初めて利用しました。 勉強になりましたm(__)m 初めからIF文と決め付けて探したのが良くなかったです(;_; まだまだ知らない関数が多々あるんでしょうね… いろいろ調べてみようと思います!

関連するQ&A