#N/A エラーは、一般に、検索が求められたものを数式が見つけることができないことを示します。
解決方法
#N/A エラーの最も一般的な原因は、数式で参照値が見つからない場合、XLOOKUP、VLOOKUP、HLOOKUP、LOOKUP、または MATCH 関数です。 たとえば、参照値がソース データに存在しません。
この場合、ルックアップ テーブルに "バナナ" が一覧表示されないため、VLOOKUP は #N/A エラーを返します。
解決方法:ソース データに参照値を入力するか、数式に IFERROR などのエラー ハンドラーを使用します。 たとえば、=IFERROR(FORMULA(),0) の場合、次のような意味になります。
- =IF(数式はエラーに評価され、0 を表示し、それ以外の場合は数式の結果を表示します)
"" を使用して何も表示しないか、独自のテキストに置き換えることができます: =IFERROR(FORMULA(),"ここでエラー メッセージ")
注
VLOOKUP や INDEX/MATCH などの特定の関数の#N/A エラーに関するヘルプが必要な場合は、次のいずれかのオプションを選択します。
Correct the #N/A error in VLOOKUP function (VLOOKUP 関数の #N/A エラーの修正)
Correct the #N/A error in INDEX/MATCH functions (INDEX/MATCH 関数の #N/A エラーの修正)
また、XLOOKUP、VLOOKUP、HLOOKUP、LOOKUP、 MATCHなど、このエラーが発生する一般的な関数について学習すると便利な場合があります。
この時点で何を行うか、どのようなヘルプが必要かわからない場合は、 Microsoft コミュニティで同様の質問を検索したり、独自の質問を投稿したりできます。
このエラーの修正に関するヘルプが必要な場合は、次のチェックリストを使用して、数式で問題が発生した可能性のある問題を特定するためのトラブルシューティング手順を示します。
値の型が正しくない
参照値とソース データのデータ型が異なります。 たとえば、VLOOKUP で数値を参照しようとしているが、ソース データが文字列として保存されている場合などです。
解決策: データ型が同じであることを確認します。 セルの書式をチェックするには、セルまたはセル範囲を選択し、右クリックして [セルの書式設定>Number (または Ctrl + 1 キーを押す) を選択し、必要に応じて数値の書式を変更します。
ヒント
列全体で書式を強制的に変更する必要がある場合は、最初に目的の形式を適用してから、 Data>Text を Columns>Finish に使用できます。
セル内に余分なスペースがある
TRIM 関数を使って、先頭または末尾のスペースを削除することができます。 次の例では、TRIM をネストした VLOOKUP 関数を使用して、A2:A7 内の名前から余分な先頭のスペースを削除し、部署名を返しています。
=VLOOKUP(D2,TRIM(A2:B7),2,FALSE)
注
動的配列の数式 - 現在のバージョンの Microsoft 365 があり、 Insiders Fast リリース チャネル上にある場合は、出力範囲の左上のセルに数式を入力し、 Enter キーを押して、数式を動的配列数式として確認できます。 それ以外の場合、最初に出力範囲を選択し、出力範囲の左上のセルに数式を入力し、Ctrl + Shift + Enter キーを押して確定し、従来の配列数式として数式を入力する必要があります。 Excel によって、数式の先頭と末尾に中かっこが挿入されます。 配列数式の詳細については、「配列数式のガイドラインと例」を参照してください。
近似一致と完全一致 (TRUE または FALSE) を同時に使用している
既定では、テーブル内の情報を検索する関数は、昇順で並べ替える必要があります。 ただし、VLOOKUP および HLOOKUP ワークシート関数には、テーブルが並べ替えされていない場合でも完全一致を検索するように関数に指示する range_lookup 引数が含まれています。 完全一致を検索するには、range_lookup 引数を FALSE に設定します。 TRUE に設定すると、関数が近似一致を検索するため、エラー値 #N/A が返されるだけでなく、次の例のように結果自体もエラーになる場合があります。
この例では、"バナナ" が #N/A エラーを返すだけでなく、"Pear" は間違った価格を返します。 これは、VLOOKUP に完全一致でなく近似一致を検索するように指示する TRUE 引数を使用していることが原因です。 "バナナ" に近い一致はありません。"梨" はアルファベット順に "ピーチ" の前に来ます。 この場合、FALSE 引数で VLOOKUP を使用すると、"Pear" の正しい価格が返されますが、ルックアップ リストに対応する "バナナ" がないため、"バナナ" は引き続き #N/A エラーになります。
MATCH 関数を使っている場合は、match_type 引数の値を変更して、テーブルの並べ替え順序を指定してみてください。 完全一致を検索するには、match_type 引数を 0 (ゼロ) に設定します。
配列数式は、配列数式を含む範囲と同じ数の行または列を持たない範囲を参照します
これを修正するには、配列数式で参照されている範囲に、配列数式が入力されたセルの範囲と同じ数の行と列があることを確認するか、配列数式を入力するセルの数を増減して、数式の範囲参照と一致させます。
この例では、セル E2 の参照範囲が一致していません。
=SUM(IF(A2:A11=D2,B2:B5))
数式が正しく計算されるようにするには、両方の範囲が行 2-11 を反映するように数式を変更する必要があります。
=SUM(IF(A2:A11=D2,B2:B11))
注
動的配列の数式 - 現在のバージョンの Microsoft 365 があり、 Insiders Fast リリース チャネル上にある場合は、出力範囲の左上のセルに数式を入力し、 Enter キーを押して、数式を動的配列数式として確認できます。 それ以外の場合、最初に出力範囲を選択し、出力範囲の左上のセルに数式を入力し、Ctrl + Shift + Enter キーを押して確定し、従来の配列数式として数式を入力する必要があります。 Excel によって、数式の先頭と末尾に中かっこが挿入されます。 配列数式の詳細については、「配列数式のガイドラインと例」を参照してください。
データが見つからないためにセルに #N/A または NA() を手動で入力した場合は、使用可能になったらすぐに実際のデータに置き換えます。 これを行うまで、これらのセルを参照する数式は値を計算できないため、代わりに #N/A エラーが返されます。
この場合、May-December には #N/A 値があるため、Total は計算できません。代わりに、#N/A エラーが返されます。
事前定義またはユーザー定義の関数を使っている数式に、1 つ以上の必須引数が不足している。
これを修正するには、使用している関数の数式構文をチェックし、エラーを返すすべての必須引数を数式に入力します。 関数を確認するために Visual Basic エディター (VBE) を使用しなければならない場合があります。 VBE には [開発] タブから、または Alt キーを押しながら F11 キーを押してアクセスします。
入力したユーザー定義関数が使用可能でない。
これを修正するには、ユーザー定義関数を含むブックが開いており、関数が正しく機能していることを確認します。
#N/A を返す関数を使うマクロが実行されている。
これを修正するには、関数内で正しい引数が正しい位置に指定されていることを確認します。
CELL などの関数を含む保護されたファイルを編集すると、セルの内容が N/A エラーになる。
これを修正するには、Ctrl キー、Alt キー、F9 キーを同時に押して、シートの再計算を実行します。
関数の引数を理解するためのヘルプが必要な場合
適切な引数がわからない場合のために関数ウィザードを使用することができます。 対象の数式を含むセルを選択し、[数式] タブに移動し、[関数の挿入] を押します。
Excel では、ウィザードが自動的に読み込まれます。
各引数をクリックすると、Excel からそれぞれの適切な情報が提供されます。
グラフで #N/A を使用する
#N/A は便利な場合もあります。 #N/A 値はグラフにプロットされないため、グラフに対して次の例のようなデータを使用する場合は、#N/A を使用するのが一般的です。 0 と #N/A のグラフの例を次に示します。
前の例では、0 個の値がプロットされ、グラフの下部にフラットな線として表示され、合計が表示されます。 下の例では、0 (ゼロ) の値が #N/A で置き換えられています。
補足説明
Excel Tech Community の専門家にいつでも依頼したり、コミュニティでサポートを受けたりすることができます。