Excelで作業していると、突然「#NAME?」という謎のエラーが表示されて戸惑ったことはありませんか?
「なにが間違っているのかわからない…」
「式は合ってるはずなのに…」
と悩む方も多いはずです。
このエラーは初心者から上級者まで、誰もが一度は経験する代表的なExcelエラーのひとつです。
この記事では、Excelの「#NAME?」エラーの意味から、具体的な原因とその対処法までを徹底解説します。
初心者でもわかるように、実例とともにていねいに解説していきます。
「#NAME?」エラーとは何か?

エラーの基本的な意味
「#NAME?」は、Excelが入力された「名前」を認識できない場合に発生するエラーです。
Excelにとっての「名前」とは、以下のようなものを指します:
- 関数名(SUM、AVERAGE、VLOOKUPなど)
- 定義済みの名前(セルや範囲に付けた名前)
- 文字列(ダブルクォーテーションで囲まれていない文字)
エラーメッセージの読み方 「
#NAME?」は英語の「NAME」(名前)に疑問符が付いたもので、Excelが「この名前は何ですか?」と困っている状態を表しています。
エラーが発生する代表的なパターン
パターン1:存在しない関数名を使用
=SUMME(A1:A5)
「SUMME」という関数は存在しないため、#NAME?エラーが発生
パターン2:関数名のスペルミス
=AVEREGE(A1:A5)
「AVEREGE」は「AVERAGE」の誤字のため、エラーが発生
パターン3:文字列の引用符忘れ
=CONCAT(Hello, World)
「Hello」や「World」を関数名として認識してしまい、エラーが発生
パターン4:定義されていない名前の使用
=売上合計 * 0.1
「売上合計」という名前が定義されていない場合、エラーが発生
#NAME?エラーの特徴
他のエラーとの違い
- #VALUE!:値の型が間違っている
- #REF!:参照先が無効
- #DIV/0!:ゼロで割り算をしている
- #NAME?:名前を認識できない
エラーの表示範囲 #NAME?エラーは、問題のある数式が入力されたセルにのみ表示されます。
他のセルには影響しません。
関数名のミスとその修正方法

よくある関数名の間違い
スペルミスの典型例
間違った例と正しい例
間違い | 正しい | 機能 |
---|---|---|
SUMME | SUM | 合計を求める |
AVEREGE | AVERAGE | 平均を求める |
VLOOKP | VLOOKUP | 縦方向の検索 |
COUNTF | COUNTIF | 条件に合うセルを数える |
INDX | INDEX | 指定位置の値を取得 |
実際の修正例
間違った数式
=SUMME(A1:A10)
修正後の数式
=SUM(A1:A10)
確認方法
- エラーが表示されているセルをクリック
- 数式バーで関数名を確認
- 正しいスペルに修正して Enter キーを押す
言語設定による関数名の違い
多言語環境での注意点
Excelは使用言語によって関数名が異なります。
日本語版と英語版の関数名対応表
日本語版 | 英語版 | 機能 |
---|---|---|
合計 | SUM | 数値の合計 |
平均 | AVERAGE | 数値の平均 |
最大 | MAX | 最大値 |
最小 | MIN | 最小値 |
個数 | COUNT | 数値の個数 |
設定確認方法
- 「ファイル」→「オプション」をクリック
- 「言語」を選択
- 「Office の表示言語」を確認
関数名の統一
推奨される方法
- 一つのファイル内では同じ言語の関数名を使用
- チーム作業では事前に使用言語を決める
- 英語版関数名を使用すると互換性が高い
関数の大文字・小文字
Excelの関数名規則
大文字・小文字の扱い
=SUM(A1:A5) # 正常に動作
=sum(A1:A5) # 正常に動作
=Sum(A1:A5) # 正常に動作
=SUMM(A1:A5) # #NAME?エラー(関数名が間違い)
Excelでは関数名の大文字・小文字は区別されませんが、存在しない関数名を入力するとエラーになります。
自動修正機能 正しい関数名を入力すると、Excelが自動的に大文字に変換してくれます。この機能を利用して、入力が正しいかどうかを確認できます。
文字列の引用符忘れ
文字列処理の基本ルール
ダブルクォーテーションの必要性
Excelでは、文字列(テキスト)を数式で使用する場合、必ず**ダブルクォーテーション(”)**で囲む必要があります。
正しい文字列の書き方
="こんにちは" # 文字列の表示
=CONCAT("Hello", "World") # 文字列の結合
=IF(A1="完了", "終了", "継続") # 条件分岐での文字列比較
間違った書き方
=こんにちは # #NAME?エラー
=CONCAT(Hello, World) # #NAME?エラー
=IF(A1=完了, 終了, 継続) # #NAME?エラー
よくある文字列エラーのパターン
パターン1:文字列連結でのミス
間違った例
=A1 & です
正しい例
=A1 & "です"
パターン2:条件式での文字列比較
間違った例
=IF(B1=男性, "Mr.", "Ms.")
正しい例
=IF(B1="男性", "Mr.", "Ms.")
パターン3:VLOOKUP関数での検索値
間違った例
=VLOOKUP(田中, A1:C10, 2, FALSE)
正しい例
=VLOOKUP("田中", A1:C10, 2, FALSE)
数値と文字列の違い
見た目が同じでも処理が異なる
数値として扱われる場合
=SUM(1, 2, 3) # 結果: 6
=A1 + B1 # 数値の加算
文字列として扱われる場合
=CONCAT("1", "2", "3") # 結果: "123"
="1" & "2" # 結果: "12"
混在する場合の注意点
=CONCAT(A1, "年", B1, "月") # A1とB1は数値、"年"と"月"は文字列
この場合、数値は自動的に文字列に変換されて結合されます。
名前定義のミスと確認方法

Excelの名前定義機能
名前定義とは何か?
名前定義の概念
Excelでは、セルや範囲に「名前」を付けることで、数式をわかりやすくできます。
例:売上データの計算
# 名前定義を使わない場合
=SUM(B2:B100) * 0.1
# 名前定義を使った場合
=売上合計 * 0.1
名前定義の設定方法
手順1:範囲の選択
- 名前を付けたいセルまたは範囲を選択
- 名前ボックス(数式バーの左側)をクリック
- 名前を入力してEnterキーを押す
手順2:名前の管理画面から設定
- 「数式」タブをクリック
- 「名前の管理」をクリック
- 「新規作成」ボタンをクリック
- 名前と参照範囲を入力
名前定義エラーの原因と対処法
よくある名前定義のミス
原因1:名前が定義されていない
=売上合計 * 税率 # 「売上合計」や「税率」が定義されていない
原因2:名前のスペルミス
=売上合計 * 0.1 # 実際の定義名:「売上_合計」
原因3:削除された名前の参照
=総売上 - 経費 # 「総売上」の定義が削除されている
名前定義の確認方法
方法1:名前の管理画面で確認
- 「数式」タブ→「名前の管理」をクリック
- 定義されている名前の一覧を確認
- 参照先が正しいかチェック
方法2:名前ボックスで確認
- 名前ボックスのプルダウンをクリック
- 定義されている名前の一覧が表示される
方法3:F3キーを使用
- セルを選択してF3キーを押す
- 「名前の貼り付け」ダイアログが表示される
- 利用可能な名前の一覧を確認
名前定義のベストプラクティス
命名規則の例
推奨される命名方法
- わかりやすい名前:「売上合計」「顧客数」「税率」
- アンダースコア使用:「売上_2023」「利益_第1四半期」
- 英数字の組み合わせ:「Sales_Total」「Tax_Rate」
避けるべき命名方法
- 空白を含む名前:「売上 合計」(エラーの原因になる可能性)
- 数字のみの名前:「123」(セル参照と混同)
- Excelの予約語:「SUM」「IF」(関数名との衝突)
名前定義の管理
定期的なメンテナンス
- 不要な名前の削除:使われていない名前定義を削除
- 参照先の更新:データ範囲が変更された場合の更新
- 命名規則の統一:チーム内での命名ルールの徹底
具体的な修正手順

ステップバイステップの解決方法
手順1:エラーの特定
エラーセルの確認
- #NAME?エラーが表示されているセルをクリック
- 数式バーで数式の内容を確認
- エラーの原因となっている部分を特定
手順2:問題箇所の分析
チェックポイント
- [ ] 関数名のスペルは正しいか?
- [ ] 文字列はダブルクォーテーションで囲まれているか?
- [ ] 使用している名前は定義されているか?
- [ ] 言語設定に対応した関数名か?
手順3:修正の実行
関数名のミスの場合
# 修正前
=SUMME(A1:A5)
# 修正後
=SUM(A1:A5)
文字列の引用符忘れの場合
# 修正前
=CONCAT(Hello, World)
# 修正後
=CONCAT("Hello", "World")
名前定義のミスの場合
# 修正前
=売上合計 * 0.1
# 修正後(名前を正しく定義する、または直接参照に変更)
=SUM(B2:B10) * 0.1
修正作業での注意点
数式の再入力 vs 部分修正
部分修正の方法
- エラーセルをダブルクリック(または F2 キー)
- 編集モードで問題箇所のみ修正
- Enter キーで確定
全体再入力の方法
- エラーセルを選択
- 数式バーで内容を全て削除
- 正しい数式を最初から入力
修正後の確認
確認すべきポイント
- エラーが解消されたか
- 計算結果が期待通りか
- 他のセルに影響していないか
エラーを未然に防ぐための予防策

入力支援機能の活用
オートコンプリート機能
関数の入力支援
- 「=」に続けて関数名の最初の文字を入力
- 候補リストから適切な関数を選択
- Tab キーまたはダブルクリックで確定
オートコンプリートの利点
- スペルミスの防止
- 入力速度の向上
- 忘れがちな関数名の確認
関数ウィザードの使用
関数の挿入機能
- 「数式」タブ→「関数の挿入」をクリック
- カテゴリから関数を選択
- 各引数を入力欄で設定
- OK ボタンで数式を挿入
関数ウィザードの利点
- 引数の順序間違いの防止
- 必須引数の入力漏れ防止
- 関数の説明を確認しながら入力
入力チェックの習慣
段階的な確認方法
入力直後のチェック
- 数式を入力後、Enter キーで確定
- 結果がエラーでないことを確認
- 計算結果が期待値の範囲内かチェック
定期的な全体チェック
- Ctrl + F でエラー検索(「#NAME?」で検索)
- エラーセルを一つずつ確認
- 修正後に再度検索して漏れがないかチェック
数式の可読性向上
わかりやすい数式の書き方
# 改善前:わかりにくい数式
=SUM(A1:A10)*0.1+SUM(B1:B10)*0.08-C1
# 改善後:名前定義を使用
=売上合計*消費税率+その他収入*雑所得税率-経費合計
コメント機能の活用
- セルを右クリック→「コメントの挿入」
- 数式の説明や注意点を記入
- 複雑な計算式には必ずコメントを付ける
ファイル管理のベストプラクティス
バックアップの重要性
定期的なバックアップ
- 作業開始前に必ずバックアップを取る
- 重要な変更前にもバックアップを取る
- 複数世代のバックアップを保持する
変更履歴の管理
変更箇所の記録
# 変更ログの例(別シートに記録)
日付 | 変更者 | 変更内容 | 変更前 | 変更後
2024/03/15 | 田中 | 税率更新 | 0.08 | 0.10
より高度なトラブルシューティング

複雑なエラーケース
循環参照との関連
循環参照によるエラー
# A1セルに以下の数式がある場合
=A1 + 売上合計
この場合、「売上合計」が未定義だと #NAME? エラーが発生し、さらに循環参照の警告も表示されます。
外部参照でのエラー
他のファイルを参照する場合
# 参照先ファイルが見つからない場合
='[販売データ.xlsx]Sheet1'!売上合計
この場合、ファイルが見つからないか、名前定義が存在しないことが原因です。
配列数式でのエラー
動的配列でのエラー
Excel 365/2021での動的配列
# 名前が定義されていない場合
=FILTER(データ範囲, 条件範囲="完了")
「データ範囲」や「条件範囲」が定義されていないと #NAME? エラーが発生します。
VBAとの連携エラー
ユーザー定義関数のエラー
VBAで作成した関数が見つからない場合
=MyCustomFunction(A1)
VBAモジュールが削除されていたり、マクロが無効になっていると #NAME? エラーが発生します。
他のエラーとの関連性
エラーの連鎖
#NAME? から派生するエラー
エラーの波及効果
# A1セルに #NAME? エラーがある場合
A1: =未定義名前 * 100
# A1を参照するセルもエラーになる
B1: =A1 + 200 # #NAME? エラー
C1: =SUM(A1:A10) # #NAME? エラーが含まれるため計算に影響
エラーの優先順位
Excelでは複数のエラー条件が重なった場合、以下の優先順位でエラーが表示されます:
- #NULL! – 範囲の交差エラー
- #DIV/0! – ゼロ除算エラー
- #VALUE! – 値のタイプエラー
- #REF! – 参照エラー
- #NAME? – 名前エラー
- #NUM! – 数値エラー
- #N/A – 値が見つからないエラー
エラー処理関数の活用
IFERROR関数でのエラー回避
基本的な使用方法
=IFERROR(未定義名前 * 100, "エラーが発生しました")
この数式では、#NAME? エラーが発生すると代わりに「エラーが発生しました」と表示されます。
ISERROR関数での条件分岐
エラーチェック付きの数式
=IF(ISERROR(未定義名前), "名前が定義されていません", 未定義名前 * 100)
よくある質問と回答

Q: 関数名は覚えなければいけませんか?
A: 完全に覚える必要はありません。以下の方法で効率的に入力できます:
- オートコンプリート機能を活用
- 関数の挿入機能を使用
- よく使う関数から少しずつ覚える
- Excelのヘルプ機能を活用
Q: 名前定義はどの程度使うべきですか?
A: 以下の場合に名前定義が特に有効です:
- 複雑な数式を複数箇所で使用する場合
- 定数値(税率、換算レートなど)を一元管理したい場合
- 数式の可読性を向上させたい場合 ただし、過度に使用すると管理が複雑になるため、バランスが重要です。
Q: エラーが発生した数式を他の人と共有する場合の注意点は?
A: 以下の点に注意してください:
- 名前定義も含めてファイルを共有する
- 使用しているExcelのバージョンを確認する
- 言語設定の違いを考慮する
- エラーの原因と修正方法を説明する
Q: 大量のセルでエラーが発生した場合の効率的な修正方法は?
A: 以下の手順をおすすめします:
- 検索・置換機能を使用:Ctrl + H で間違った関数名を一括置換
- 選択して修正:同じエラーのセルを複数選択して一括修正
- 数式のコピー:正しい数式を作成してから他のセルにコピー
Q: #NAME?エラーとその他のエラーを見分ける方法は?
A: 各エラーには明確な特徴があります:
- #NAME?:名前を認識できない
- #VALUE!:データ型が不適切
- #REF!:参照先が無効
- #DIV/0!:ゼロで割り算
- #N/A:値が見つからない
まとめ
Excelの「#NAME?」エラーは、「名前を理解できません」というExcelからのメッセージです。
主な原因と対策のまとめ
原因 | 具体例 | 対策 |
---|---|---|
関数名のスペルミス | SUMME → SUM | オートコンプリート機能の活用 |
文字列の引用符忘れ | Hello → “Hello” | 文字列は必ずダブルクォーテーションで囲む |
名前定義の不備 | 未定義の名前使用 | 名前の管理画面で定義を確認・追加 |
言語設定の違い | 外国語版の関数名 | 使用環境に合った関数名を使用 |
エラー解決の基本ステップ
- エラーの特定:どのセルで何が原因かを確認
- 原因の分析:関数名、文字列、名前定義のチェック
- 修正の実行:正しい記述に変更
- 結果の確認:エラーが解消され、期待通りの結果か確認
予防策のポイント
- 入力支援機能の活用:オートコンプリート、関数ウィザードの使用
- 段階的な確認:数式入力後の即座チェック
- 命名規則の統一:わかりやすく一貫した名前定義
- 定期的なメンテナンス:不要な名前定義の削除と更新
コメント