• 締切済み

【OpenOffice】vlookup関数を条件式として使う

【OpenOffice】vlookup関数を条件式として使う タイトルどおりなんですが A2に書いた値がE2からE200の表内の値と一致するかどうかを条件にif文を以下のように =IF($A2=VLOOKUP($A2;$E$2:$E$200;1;0);OK;NG) 作ったんですがTRUEでない場合、NGが表示されず空白を示す#N/Aが表示されてしまうんです ちゃんとNGが表示されるようにするにはどうすればいいのでしょうか? どなたか教えていただけませんでしょうか、よろしくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

VLOOKUP関数で、FALSE型で使う場合、見つからない場合は、#N/Aのエラーになる。 (1)ISERROR関数で察知(既出回答) (2)ISNA関数を使う のどちらか。 (2)でも(見つからないと言う)エラーが起こるとエラー関数で捉えるとTRUEを返す。 =IF(ISNA(VLOOKUP(A1,$E$1:$F$100,2,FALSE)),"NF",VLOOKUP(A1,$E$1:$F$100,2,FALSE)) NFは自分ではNotFoundのつもり。"表になし”でもよい。

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.2

目的はわかりませんが $A2=VLOOKUP($A2;$E$2:$E$200;1;0) に於いて VLOOKUPには =の左にあるセルは使えません OK,NGはシステム定数にありますか? (true;false) または ("OK";"NG")

  • prius770c
  • ベストアンサー率35% (91/258)
回答No.1

=IF(ISERROR(VLOOKUP(A2,$e$2:$e$200,1,0)),"NG","OK") 上記の式で、いけると思います。 考え方としては、「ISERROR」でVLOOKUPの結果がエラーかどうか判断します。 「ISERROR」は、テスト対象(今回はVLOOKの計算結果)がエラー値の場合にTRUEを返します。 それをIF文の条件式として、「真の場合」(VLOOKの結果がエラーをTUREとしているので)を「NG」として「偽の場合」(VLOOKがエラーではないので)「OK」とします。

kusanagi0401
質問者

お礼

すばやい回答有難うございます。 早速試してみようと思います。

関連するQ&A