• BPnet
  • ビジネス
  • IT
  • テクノロジー
  • 医療
  • 建設・不動産
  • TRENDY
  • WOMAN
  • ショッピング
  • 転職
  • ナショジオ
  • 日経電子版
  • PR

  • PR

  • PR

  • PR

  • PR

田中亨の「エクセル関数」講座

「エクセル関数」講座 中級編-「エラーにならない関数」を実現する方法

「エラーにならない関数」を実現する方法 (第3回)

田中 亨=テクニカルライター 2008/01/10 日経PC21

 中級編の最終回では、関数を「ネスト」によって組み合わせる方法を解説します。ネストとは、関数の引数として別の関数式を組み込み、入れ子にする式の立て方です。エクセル2003までのバージョンでは、最大7つの階層まで関数をネストできます。これを使えば、余計な作業セルを設けなくても、一発で目的の計算やデータ処理を実現できます。

 ネストによって関数を組み合わせる例として、ここでは「関数のエラーを防ぐ」定番テクニックを紹介しましょう。中級編の第1回で触れた「VLOOKUP関数にエラーを表示させない方法」です。

 下の図1は、VLOOKUP関数を使って商品リストから商品番号を検索し、該当する商品名を調べる表です。VLOOKUP関数は、引数に「検索値、範囲、列番号、検索の型」の4つを指定して、「検索値」を「範囲」の左端で探し、見つかった行の、「列番号」で指定した列からデータを取り出します。ここでは「検索値」に調べる「商品番号」、「範囲」に商品リストを指定し、「列番号」を「2」として2列目の商品名を取り出すように式を立てました。「検索の型」は検索のモードを指定する引数で、「FALSE」とすれば、完全に一致する値のみを検索します。

図1 F2セルに入力した「商品番号」を左側の商品リストで検索し、該当する「商品名」を自動表示するVLOOKUP関数の式。正しい商品番号を入れれば問題ないが…

 ところが、検索が終わって「商品番号」欄を「Delete」キーで消去すると、VLOOKUP関数がエラーを表示します。VLOOKUP関数は、引数「検索値」に指定したセルが空欄のとき、「#N/A」というエラーを表示する仕様となっているのです。これは「値が無効である」を意味する「Not Available」の略語。検索する値が存在しないので、「無効」だというわけです(図2)。

図2 検索する「商品番号」欄をクリアすると、VLOOKUP関数はエラー「#N/A」を表示する。このままでは、「商品番号」欄に常に何かしらの値を入れておく必要があり、具合が悪い

 このエラーを解消するにはどうすればよいでしょうか。「検索値が空欄のときもエラーにならないVLOOKUP関数を教えてください」というのはムリな相談です。こんなときこそ、関数の「組み合わせ」が威力を発揮します。IF関数を使った“場合分け”によって、対策を講じればよいのです。

[IF関数を使うとこうなる:次のページへ]

ここから先はITpro会員(無料)の登録が必要です。

次ページ IF関数は、引数に「論理式、真の場合、偽の場合」...
  • 1
  • 2
  • 3
  • 4

あなたにお薦め

連載新着

連載目次を見る

今のおすすめ記事

ITpro SPECIALPR

What’s New!

経営

アプリケーション/DB/ミドルウエア

クラウド

運用管理

設計/開発

サーバー/ストレージ

クライアント/OA機器

ネットワーク/通信サービス

セキュリティ

もっと見る