エクセルのエラー「#REF!」 「#N/A」「#DIV/0!」とは?意味を覚えてますか?
Excelを使っているとよく見かけるエラー値たち。
代表的なエラーとしては「#REF!」「#N/A」「#DIV/0!」などがありますね。
これらの意味や読み方を「なんとなくはわかっている」方は多いかと思いますが、「なぜこのエラーが出ているの?」「どうやったらエラーを回避できるの?」と困ってしまうときもあるはず!そんな時の為に、きちんとそれぞれのエラー値の意味を理解して正しくチェックや修正が出来るようにしておきましょう。
「#REF!」(リファレンス)とは?どんな時に表示される?
はじめに解説するのは「#REF!」エラーです。エクセルではよく見かけるエラーですが、「ref」の意味からしっかり理解していきましょう。
一般的な「ref」の意味や読み方について
「ref」は英語の”reference”を省略した言葉で、リファレンスまたはレファレンスと発音されます。この言葉の一般的な意味は、言及、参照、参考、参考文献、信用照会先などを指します。
使用される文脈によって「ref」の持つ意味は微妙に変化します。また、業界によってニュアンスが異なる場合があるため、使用する際には注意が必要です。
Excelの関数における「ref」の意味
主に関数や計算式で使用されているセルの値を削除してしまった時や参照先が無効な場合に表示されるエラーです。このエラーが表示されている時は、”とにかく何か間違っています”。ので、エラーの原因を探るために色々と確認していくことが必要になりますね。計算式で指定している範囲が間違っていないか、参照先のセルを削除してしまっていないかなどを確認しましょう。
例)IF関数の参照セルを削除してしまった
例えば以下のように、商品単価を記載したセル(10個以下は500円等)を参照して、販売個数に応じた単価をIF関数のネストで「単価」列に表示させているとします。
※わかりやすくする為、上の画像では「参照元のトレース」機能で参照セルを表示しています。
この状態で、商品単価が記載されている行をうっかり削除してしまうと…
「セルを参照出来ていませんよ!計算出来ませんよ!エラーですよ!」となるわけですね。
このような場合は「元に戻す」で削除してしまう前まで戻れば大丈夫です。ですので、「あれ、さっきまでちゃんと計算出来ていたのに急にリファレンスのエラーが出たな…」なんて時はまず「元に戻す」を使って誤った操作をしていないかを確認していくのが良いですね。
※参照先のシートやブックを削除してしまっているケースだと「元に戻す」では復元できないので注意が必要です。また他ブックの特定のシートを参照している場合は、ブックの保存場所を移動してしまって、パスが変わっていたりするとこのような形でエラーになるかと思います。
例)VLOOKUP関数で正しくない範囲参照を含む
VLOOKUP関数で「#REF!」エラーが発生する主な原因は、範囲参照が正しくないことです。例えば、検索範囲として指定した列数よりも大きい列番号をVLOOKUP関数で指定した場合に発生します。
このエラーを解決するには、VLOOKUP関数の範囲を修正する必要があります。具体的には、範囲を広げるか、列参照値を参照範囲に合わせて小さくします。例えば、参照範囲がA2:D5である場合に、5列目を参照するVLOOKUP関数を使用するとエラーになります。この場合、範囲をA2:E5に広げるか、列参照値を4に変更することでエラーを回避できます。
・論文で使われる「ref」の意味
Excelから話題が離れますが、「ref」は様々な用途で使われています。
論文で「ref」が使われる場合、これは英語の”reference”の略であり、参考文献という意味を持ちます。参考文献とは、論文を作成するにあたって参考にした文献を指し、研究の基盤や情報源を示すために重要な役割を果たします。参考文献を明記することで、論文の信頼性が高まるだけでなく、先行研究への敬意を示すことにもつながります。また、読者に対して更なる情報源を提供する意味もあります。
・腕時計などに使われる「ref」の意味
腕時計などに刻印されている「ref」は、リファレンスナンバー(型番)の意味を持ちます。これは製品を管理する上で、モデルを特定するために使用される番号です。
一見同じような腕時計でも、素材や装飾の違いなど、細かな差異が存在します。リファレンスナンバーは、これらの違いを区別し、製品管理を効率化する理由として重要な役割を果たしています。
シリアルナンバーは個体ごとの識別番号であり、同じ製品でも異なる番号が割り振られます。リファレンスナンバーとシリアルナンバーは、それぞれ異なる意味を持つため、混同しないように注意が必要です。
「#N/A」(ノーアサイン)=値がありませんよ
つぎに解説するのは「#N/A」エラーです。「#N/A」は「ノーアサイン」と読みます。だいたいVLOOKUP関数を使っていてよく見るエラーですね。
例)参照する値がない VLOOKUP関数
例えば、以下のように、商品の一覧を参照し入力規則を使ってコードを選択するだけで、商品名と単価を自動的にひっぱってくる表を作成していたとします。
※多くの場合、他のシートに一覧を持っておいて引っ張ってくる事が多いと思いますが、わかりやすくする為にすぐ下に一覧を作成しています。
ここで、No.1~No.3までのように、きちんと商品コードを指定してあげれば正しく書籍一覧の検索範囲から「商品名」と「単価」を参照して数値を持ってくることができます。
しかし、No.4とNo.5の商品コードは選択されておらず、空欄になっています。よって、「値がありませんよ!だから商品名と単価にそれぞれの値を引っ張ってこれませんよ!」とエラーが出ているわけです。さらに、単価が出てない上に個数も入力されていないので合計金額にもエラーが出ていますね。
ここで「#N/A」(ノーアサイン)の意味がわかっていれば、「なるほど。商品コードを指定していないから出ているエラーだな」というのがわかりますので、すぐに対処をしたり、問題がないエラーだというのを確認できて安心できます。
「一方、コードを指定していない時にこの#N/Aエラーが出ているのはかっこ悪いなぁ」といった場合、IFERROR関数を使えば、エラーを回避する事ができます。ちなみに、IFERROR関数を使っていない状態のExcelファイルを突然渡され、特定の箇所をSUM関数などで集計する必要がある時には、AGGREGATE関数を使うと便利です。
IFFRROR関数を使ったエラー回避の方法については後述します。AGGREGATE関数についてはまた別の機会に。
「#DIV/0!」(ディバイド・パー・ゼロ)=0で割っていますよ!
最後に解説するのは、「#DIV/0!」エラーです。「ディバイド・パー・ゼロ」と読みます。
このエラーは、数式がゼロを除算しようとした場合に表示されます。例えば、合計を項目数で割って平均を求める際に、項目数がゼロの場合などに発生します。
このようなエラーを回避する方法としては、後述するIFERROR関数を使用する、または該当セルに計算式を入れずに「0」や「N/M」(not meaningful=計算する意味がありません)と入力しておくといった方法があります。
その他よくあるエラー
Excelでよく遭遇するエラーは他にもいくつか種類があります。
- 「#VALUE!」(バリュー)エラーは、数式に使用された値の種類が正しくない場合に表示されます。数式で参照しているセルに、数値ではなく文字列が含まれている場合などに発生することがあります。 参照先のセルに非表示のスペースが含まれている場合にも、このエラーが出ることがあります。 参照する値にテキストが含まれている場合にも発生しやすいエラーです。
- 「#NAME?」(ネーム)エラーは、数式内の関数名が間違っている場合に表示されます。例えば、SUM関数を「SAM」と入力した場合などがこれにあたります。 数式内の文字列を二重引用符で囲んでいない場合にも表示されることがあります。 また、定義されていない名前を参照している場合にも発生します。
- 「#NUM!」(ナム)エラーは、数式や関数に無効な数値が使用されている場合に表示されます。 例えば、負の数の平方根を求めようとした場合や、Excelで扱える数値の範囲を超えた計算結果になった場合などに発生します。
- 「#NULL!」(ヌル)エラーは、数式で指定したセル範囲が正しくない場合に表示されます。 例えば、セル範囲を区切るコロン「:」の代わりに、半角スペースを入力してしまった場合などに発生します。
エラーが出た時にエラーコードを非表示にしたい・別の言葉で表示したい場合
さて、ここまで代表的なエラー値をご紹介してきましたが、冒頭の「#N/A」でも紹介した通り、エラー表示を回避したり(空白)、別の言葉で置き換えることができます。それを行う際は「IFERROR関数」を利用します。
以下では、先ほどの「#N/A」エラーの時の表の「No.5」の行の、「商品名」「単価」「金額」の式にそれぞれIFERROR関数をネスト(入れ子に)しました。
IFERROR関数の引数は、「=IFERROR(値,エラーの場合の値)」となっています。ここでは『値』に元々のVLOOKUP関数を挿入し、『エラーの場合の値』には「””」を入力することで、エラーが出た場合は空欄にするように設定してみました。一方、「単価」や「個数」では『エラーの場合の値』に「エラー」という文字列を入力し、エラーと表示させるように設定しています。
■簡単に記載すると…
「=IFERROR(A1*B1,””)」これでA1×B1の計算でエラーが出たときに何も表示されず空白となります。
「=IFERROR(A1*B1,”エラー”)」これでA1×B1の計算でエラーが出たときに、「エラー」と表示されます。
用途に合わせて設定できると綺麗な表になりますね。
もちろん「#REF!」のエラーが出ている式でもこれを使えばエラーを回避できます。とにかくエラーコードを回避したい場合はIFERROR関数を活用する!と覚えておきましょう!
エクセルでエラーが出ても、柔軟に対応できるようになろう!
Excelで表示されるエラーの意味や対処法を理解することは、作業を効率的に進める上で非常に重要です。
今回の記事では、代表的なエラーである「#REF!」、「#N/A」、「#DIV/0!」を中心に解説しました。これらのエラーが表示された際に、その原因を特定し、適切に対応できるようになることで、焦らずにファイル作成や計算作業を行うことができます。エラー表示を非表示にしたり、別の表示に変えたい場合はIFERROR関数が便利です。
まずはExcelの基本的な仕組みを理解し、エラーに柔軟に対応できるようになりましょう。
パソコン教室わかるとできるでは、レベルや用途に応じた多くのエクセルに関する講座をご用意しています。
興味を持っていただけた方は、ぜひチェックしてみてくださいね。
「パソコン教室わかるとできる」は教室数トップクラスのパソコン教室なので安心して通っていただけます。全国に約170教室展開していますので、まずはお近くの教室までお気軽に無料体験をお申し込みください!
・無料体験のお申し込みはこちら