- ベストアンサー
急いでます。エクセルの関数教えて下さい
=VLOOKUP(E4,B4:C7,2) という式があって、 #N/Aを表示させたくないときに=IF関数を使うのはわかるのですが、 このIFと VLOOKUPの式のつなげ方ってどうやるんでしょうか? よろしくお願い致します
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
NO.2です。 何度も済みません。 検索値と範囲がまったく違っておりました。 訂正いたします。 E4の値がB列の範囲に無い場合も、#N/Aが表示されないものです。 =IF(ISERROR(VLOOKUP(E4,$B$4:$C$7,2,0)),"",VLOOKUP(E4,$B$4:$C$7,2,0))
その他の回答 (6)
- mshr1962
- ベストアンサー率39% (7417/18945)
#N/Aが出る理由は、 E4がブランクの場合 E4と同じ値がB4:B7にない場合 ですね。 =IF(ISNA(VLOOKUP(E4,$B$4:$C$7,2)),"",VLOOKUP(E4,$B$4:$C$7,2)) ※ISNAは#N/Aのエラーのみ対応します。ISERRORはすべてのエラーに対応します。 この場合はどちらでも同じ結果になります。別解として =IF(OR(E4="",COUNTIF($B$4:$B$7,E4)=0),"",VLOOKUP(E4,$B$4:$C$7,2)) でも同じ結果を導き出せます。
「#N/A」はエラー表示ですから、それを表示させないために「ISERROR関数」を使います。 ですから =IF(ISERROR(VLOOKUP(E4,B4:C7,2)),"",VLOOKUP(E4,B4:C7,2)) これで、「#N/A」は表示されなくなると思いますが…。
- jakotama92
- ベストアンサー率35% (28/78)
NO.2に追加します。 E4の値がB列に存在しない値であった場合も、#N/Aが表示されません。
- newbranch
- ベストアンサー率30% (319/1053)
通常IF関数は、条件を設定する式の前にもっていき、作成します。 たとえば、質問の場合ですと、 =IF(E4="","",Vlookup(E4,B4:C7,2)) とすると、E4のcellが空欄の時には何も表示しなくなります。
- jakotama92
- ベストアンサー率35% (28/78)
=IF(ISERROR(VLOOKUP(B4,$E$4:$F$7,2,0)),"",VLOOKUP(B4,$E$4:$F$7,2,0))
- NIWAKA_0
- ベストアンサー率28% (508/1790)
=IF(E4="","",VLOOKUP(E4,B4:C7,2)) 範囲は、絶対参照を使うとコピーしたときにずれません。 =IF(E4="","",VLOOKUP($E$4,$B$4:$C$7,2)) ところで、VLOOKUPよりもLOOKUP関数の方が使いやすくないですか? 参考 =IF(E4="","",LOOKUP(E4,$B$4:$B$7,$C$4:$C$7))