VLOOKUPであるかないかを〇×判定する方法

VLOOKUP関数を用いた検索で「あれば〇」を「なければ×」という「あるかないかを〇×で判定する方法」を解説します。

完成イメージ

右表「資格手当一覧」に該当する取得資格を持つ社員に対して、左表「社員別資格手当」の「資格手当有無」に〇×を振るイメージです。

わかりにくかったらすみません、、、コメント頂ければと思います。

VLOOKUPであるかないかを〇×判定する方法

ISERROR関数を使用する場合

=IF(ISERROR(VLOOKUP(C3,$F$3:$G$4,2,FALSE)),"×","〇")

ISERROR関数は数式が以下のエラーとなる場合にTRUE(真)を、そうでない場合はFALSE(偽)を返す関数です。

  • #DIV/0!
  • #N/A
  • #NAME?
  • #NULL!
  • #NUM!
  • #REF!
  • #VALUE!

VLOOKUP関数を使用した場合、検索範囲に該当するセルが見つからない場合は「#/N/A」というエラーになり、その他検索範囲を不適切に指定した場合は「#REF!」が返る場合もあります。

上記エラーが発生した場合は、VLOOKUP関数による検索が行えずエラーとする目的でVLOOKUP関数の数式をISERROR関数関数で囲います。

更にIF文で囲っている為、ISERROR関数内のVLOOKUP関数がエラー(=TRUE(真)であれば、"〇"となり、そうでなければ"×"が設定されることになります。

〇×だけでなく、エラーとなった場合は固定値を指定するという使い方も出来ます。上記例では「資格手当一覧」より取得できなければ手当ゼロとして、ISERROR関数による結果がTRUE(真)の場合は固定で「0」とし、FALSE(偽)が返ってきた場合は改めてVLOOKUP関数で検索をかけにいくようにしています。

=IF(ISERROR(VLOOKUP(C5,$F$3:$G$4,2,FALSE)),0,VLOOKUP(C5,$F$3:$G$4,2,FALSE))

ISNA関数を使用する場合

=IF(ISNA(VLOOKUP(C3,$F$3:$G$4,2,FALSE)),"×","〇")

先のISERROR関数では複数の数式エラーを対象に「エラーとなった場合はTRUE(真)を返す」としていましたが、ISNA関数は「#N/Aエラーの場合にTRUE(真)を返す」ものです。

数式自体が正しい(検索範囲の指定や数式構文に問題がない)ことは確認できた上で、検索範囲に合致するものがあった場合は"〇"とし、そうでない場合は"×"とすることを目的とする場合はISNA関数で十分です。

補足ですが、逆に「#N/A以外のエラーの場合にTRUE(真)を返す」事を目的とした関数として「ISERR関数」というものがあります。目的に応じて使い分けるのが良いでしょう。

他の人と共有する系の資料やレビューを要する資料であれば関数名から内容がわかりやすい「ISERROR関数」を使うのが無難かもしれません。

当サイトで使用しているWPテーマ

<初心者でも簡単に利用することが可能な高品質高機能ワードプレステーマ>

品質・機能共に非常にハイスペックなWordPressテーマでありながら、HTMLやCSSといった知識が無くとも画面操作のみで美しいデザインのブログを簡単に構築することが可能となっています。カスタマイズ性に富んでいる為、同じテーマを使っているサイトと似たようなデザインにもなりにくく、オリジナリティ溢れるサイトデザインを作り上げる事が出来ます。

デザインのみならず、Googleの規約に準拠したSEO対策、無期限・無制限で利用可能なメールサポート、継続的な機能追加(バージョンアップ)等々、サイト構築・運営にひとしきり必要なサポートが非常に手厚いのも特徴です。

また、Diver開発にはアフィリエイトプログラムの開発に携わっていた技術者が思考をこらした工夫が盛り込まれており、収益化を目指すブログに最適なテーマとなっています。更に一度購入すれば自身が所有する複数サイトに追加料金なしで適用できるというお値打ち仕様も魅力の一つとなっています。

Twitterでフォローしよう

おすすめの記事