いまさら聞けないExcelの使い方講座

【Excel】数式は正しいはずなのになぜ? よくある「#VALUE!」エラーの原因と解決法

数式は正しいはずなのに「#VALUE!」エラーが発生した!

 Excelで売上表などを作成する際、数式を入力してデータを集計したりすることがありますよね。数式は正しいはずなのに、なぜかエラーが出てしまって困った経験はありませんか?

 次の「備品発注表」の例を見てください。この表のC列には「数量」、D列には「単価」が入力されており、E列の「小計」列(①)には「数量×単価」という数式が入力されています。E列には、すべて同じ数式が入力されているのですが、セルE7だけ「#VALUE!」(②)というエラーが発生しています。なぜでしょうか。

 今回の記事では、このような「#VALUE!」エラーが発生してしまったときに、その原因を探り、対処する方法を考えていきます。

「#VALUE!」エラーが発生する理由

 前述でも解説したように、次の「備品発注表」のE列の「小計」列(①)には「数量×単価」という数式が入力されています。すべてのセルに同じ数式が入力されているのですが、セルE7だけ「#VALUE!」(②)というエラーが発生しています。

 「#VALUE!」は、数式で参照しているセルに、不適切な値が入っている場合に表示されるエラーです。よくあるケースとして、数値を指定すべきセルに、文字列が入力されているときに発生します。今回、エラーが発生しているセルE7(③)の隣のセルD7(④)をよく見ると、「1,800円」という文字列が入力されていることがわかります(セルに文字列が入力されていると、文字の配置が左詰めで表示されます)。

 セルE7には、「=C7*D7」という数式が入力されていますが、この数式で、文字列が入力されているセルD7を参照しているため、エラーになっていたというわけです。

 なお、「単価」のほかのセルや「小計」にも、「X,XXX円」のように「円」が表示されていますが、これは実際に「円」という文字列が入力されているわけではありません。「ユーザー定義の表示形式」という機能を使って、見かけ上、「円」という単位を表示させているのです。「数量」のセルも同様に、セルには数値を入力し、表示形式によって「個」の単位を表示させています。

「#VALUE!」エラーを解消する方法

 前項までで、セルE7に「#VALUE!」が表示されてしまう理由をわかってもらえたと思います。この項では「#VALUE!」エラーを解消していきましょう。まず、セルD7の「1,800円」(①)から「円」だけを削除します。

 セルD7に入力されていた文字列が数値に変わったので、セルD7を参照しているセルE7の「#VALUE!」エラーが消え、正しい計算結果が表示されます(②)。

 エラーを解消できたので、次は、セルD7の値も「1,800円」のように単位を付けて表示させてみましょう。セルD7(③)を選択した状態で、[ホーム]タブ(④)の[数値]にある矢印ボタン(⑤)をクリックします。

 [セルの書式設定]ダイアログボックスが表示されるので、[表示形式]タブ(⑥)の[ユーザー定義](⑦)をクリックします。[種類]欄に「#,##0"円"」(⑧)と入力します。[サンプル]欄にプレビューが表示されるので(⑨)、確認して[OK](⑩)をクリックします。

 なお、ユーザー定義の表示形式で使用できる書式の詳細については、【Excel】「5,000,000円」を「5百万円」と表示するには?エクセルのユーザー定義書式の表記法をマスターする!を参考にしてください。

 ダイアログボックスが閉じ、シートに戻ると、セルD7に「1,800円」(⑪)と表示されています。

 今回のように、数式は正しいはずなのに「#VALUE!」エラーが表示されるという場合は、数式が参照するセルに文字列が入力されていないかどうかを確認してみてください。ぱっと見で気付かなくても、よく見ると文字列が混じって入力されているかもしれません。

数式は正しいはずなのに「#VALUE!」エラーが発生したときは

 今回は、Excelで「#VALUE!」エラーが発生したときに、その原因を探り、対処する方法を解説しました。「#VALUE!」エラーが発生してしまったら、エラーが出ているセルだけでなく、そのセルが参照しているセルに誤りがないかを確認してみてください。エラーが出ると、焦ってしまいがちですが、落ち着いて対処すれば解決できます。「#VALUE!」を見かけたときは、ぜひこの記事を思い出してくださいね。