- ベストアンサー
VLOOKUP関数とIF関数
VLOOKUP関数が全体的に見えてきません。何をこれでしたいのか? また、VLOOKUP関数でIF関数を使うところなのですが、これはエラーを表示させないために使用することは、理解できました。 しかし 「=IF」をここで使用することで、エラーがなくなるのでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
#2です。 IF関数の使い方です。 =IF(条件式,真の時の処理,偽の時の処理) なので、 《=IF(A15="","",VLOOKUP関数》 条件式:A15="" 真の時:""(を表示) 偽の時:VLOOKUP関数(を実行) これは、 「A15」セルの中身が""(何もない)だったら、「""」を表示して、何かあったらVLOOKUP関数を実行しなさい。 という意味になります。 なので、VLOOKUP関数で何もないセルを検索値としたときのエラーを回避しています。
その他の回答 (4)
- imogasi
- ベストアンサー率27% (4737/17069)
何か質問者の既存のイメージや思い込みが災いして、理解が進まないようですね。 他のエクセルの関数でも経験を積むことです。 >エラーがなくなるのでしょうか (1)A1セルが「空白か」を聞くタイプ 前もって明らかに意味のない、A1セルの空白の場合はVLOOKUP処理は避ける事を織り込む方法です。 式の複写で、入力されるセル全体に前もって式を埋め込むので、その段階から、エラー表示が出るのは、うっとおしいので避けたいのは 人情です。そのために使います。 =IF(A="","",VLOOKUP())のタイプはA1が空白だったら、VLOOKUPの演算(処理)に入らないから、エラーはVLOOKUPでは起こりえません。 しかしA1が空白でないときに、検索列の中にA1の文字列数字に当たるエントリが検索表に見つからないときはエラーが返ります。そのときの為には (2)エラーかを聞くタイプ =IF(ISERROR(VLOOKUP(A1,・・・),"",,VLOOKUP(A1,・・・) これはA1が空白の場合を含め、VLOOKUP検索をやってみて エラーが出れば、(場合としては空白か、見つからない場合)空白をセルにセットして、とりあえずその場を凌ぐということです。 A1に値が入ったり、検索表に追加エントリがあれば、正常な値になります。 エラーがなくなるかどうかは、引数に指定したセル(セル範囲の)値による場合が多く、「エラーがなくなる」のは関数と関係ない場合が 多い。おることがしたくて、ある単一関数ではエラー、別の関数では0などは仔細に見れば有るかもしれないが。
補足
なんとなく理解はできてきました。ご丁寧にありがとうございました。
- mshr1962
- ベストアンサー率39% (7417/18945)
=IF(A1="","",VLOOKUP(A1,表,列,処理方法)) この場合はA1が未入力に対しての回避なので表にA1が見つからないとエラーします。 =IF(COUNTIF(表の左端の列,A1),"",VLOOKUP(A1,表,列,FALSE)) この場合はA1が見つからない場合の回避です。 但し処理方法がTRUEの場合には使えません。 また表の左端の列が"数値"と"数値だけの文字列"の混合した場合、 判定がエラーになり非表示になる可能性があります。 =IF(ISNA(VLOOKUP(A1,表,列,処理方法)),"",VLOOKUP(A1,表,列,処理方法)) 又は =IF(ISERROR(VLOOKUP(A1,表,列,処理方法)),"",VLOOKUP(A1,表,列,処理方法)) これもA1が見つからない場合の回避です。 処理方法がTRUEの場合にも使えます。 でも、表の左端の列が"数値"と"数値だけの文字列"の混合した場合、 判定がエラーになり非表示になる可能性があります。 TRUEの場合は、上記に加えて表の左端の列が昇順の必要があります。
お礼
今勉強していることと照らし合わせながら、理解していきたいと思っております。まことにありがとうございます。
「VLOOKUP関数が全体的に見えてきません。何をこれでしたいのか?」 なにがしたいのかではなく、何をやっているのかが理解できていますか? VLOOKUP関数は別に用意してある表から値を参照するために使います。 例えば、ある商品名と定価の一覧表があったとします。 別の表を作ったときに、表の中に商品名を入れると定価が自動的に入力されたら便利だと思いませんか? そういうときにVLOOKUP関数を利用して、商品名を検索値にし定価を参照して表示させるのです。 「「=IF」をここで使用することで、エラーがなくなるのでしょうか? エラーが無くなるわけではありません。エラーになったときに受け側の表で「エラー」が表示されるとみっともないので、通常""(空白)を表示させているだけです。VLOOKUP関数で参照しようとしている検索値に対応する値が無いときにエラーになりますから、それを「表示させない」ようにしているだけです。
補足
回答ありがとうございます。しかし、IF関数の使い方がまったくわからないですねぇ。たとえば《=IF(A15="","",VLOOKUP関数》この中の「"","",」とは何が「""」?なんでしょう????
- nakamuraya
- ベストアンサー率33% (144/425)
補足
参考にさせていただきます。ありがとうございました。
お礼
なーるほどー。うれしいです。わかります。ありがとうございます。