 |
|
HOME
»
エクセル・Excel
»
関数・計算
»
IFERROR関数でVLOOKUP関数の#N/Aエラーを回避
|
 |
|
IFERROR関数でVLOOKUP関数の#N/Aエラーを回避 |
本家Be Cool UsersのVLOOKUP関数【キッカリ検索編】では、左のようなB2番地に

という数式を入力することで、B1番地に入力された[顧客コード]に該当する顧客名を一覧表から探し出し、表示させる方法をご紹介しています。
[検索値]となるB1番地に顧客コードが入力されていれば、ちゃんとそれに対応する顧客名が表示されるわけですが、
[検索値]となるB1番地に何も入力されていなかったり、
入力ミスなどで[検索値]となるB1番地に入力した「顧客コード」が、[範囲]に指定した一覧表で見つからない場合には、#N/Aエラーが表示されてしまいます。
VLOOKUP関数では
●[検索値]となるセルに何も入力されていない
●[検索値]となるセルに入力したものが、[範囲]に指定した一覧表にない
|
という2つの要因で#N/Aエラーが出てしまいます。
Excelくんからすれば、「探したいものは一体何よ?」とか、「探したいものはわかったけど、そんなもんは探してほしい場所にはありません」というわけです。
こういった場合に出てしまう#N/Aエラーを表示しないようにしたい場合、以前のバージョンのExcelでは、IF関数とISERROR関数を組み合わせて、

と、表現することで対応できました。
これは恐ろしく長い数式でウンザリでした。
Excel2007では、新関数のIFERROR関数を使うことで、もっとスッキリと対応することができます。
|
 |
|
IFERROR関数とVLOOKUP関数のネスト |
早速数式を設定してみます。
数式を設定したいセルを選択し、IFERROR関数を選択します。
IFERROR関数を「セリフ」で表すと、
もし がエラーだった場合には、 を表示してね。
※そうじゃない場合(エラーじゃない場合)は、 が表示されます。
|
です。
これを今回やりたいことに照らし合わせると、
もしVLOOKUPの数式がエラーだった場合には、空欄にしてね。
※そうじゃない場合(エラーじゃない場合)は、VLOOKUPの計算結果が表示されます。
|
ということになります。
というわけで、 の引数[値]にはVLOOKUP関数を入れます。

の引数[値]の欄にカーソルがある状態で、数式バーの左にある[▼]をクリックし、VLOOKUP関数を選びます。
[▼]をクリックして表示された一覧にVLOOKUP関数が無ければ、この一覧の一番下にある[その他の関数]をクリックし、VLOOKUP関数を選びます。
ダイアログボックスがVLOOKUP関数のものに変わるので、VLOOKUP関数の引数を設定します。

さて、VLOOKUP関数の引数を設定すると、安心して[OK]ボタンを押したくなりますが絶対に押してはいけません(笑)。まだ早いっす。
なぜならここまでの作業は、最初に入れたIFERROR関数の引数[値]を設定しただけで、まだ[エラーの場合の値]は設定していないからです。
IFERROR関数の残りの引数を設定するため、関数のダイアログボックスをIFERROR関数のものに戻します。
下の図のように、数式バーの[IFERROR]の文字のところでクリックすると・・・

ダイアログボックスが「IFERROR」のものに戻り、引数[値]の欄にはここまで設定した数式が入っていることが分かります。

引数[値]に設定した数式がエラーだった場合、今回は空欄を表示させたいわけですから、[エラーの場合の値]には、「空欄」を意味するダブルクォーテーション2つを入力します。

これで全ての引数を指定し終わったので、最後にOKボタンをクリックします。
VLOOKUP関数の数式がエラーにならない場合はVLOOKUPの計算結果が表示されるので、ちゃんと「顧客コード」該当する「顧客名」が表示されます。
[検索値]となるセルに何も入力されていない場合や、
[検索値]となるセルに入力したものが、[範囲]に指定した一覧表に無い場合はエラーとなるので、そのエラーは表示されず、空欄となっていることが分かります!
|
|
|
 |
| スポンサードリンク |
|
|
 |
 |
|
|
 |
|
HOME
»
エクセル・Excel
»
関数・計算
»
IFERROR関数でVLOOKUP関数の#N/Aエラーを回避
|
|
 |
|