カテゴリ: Excel VBA 更新日: 2026/01/05

Excel VBA参照設定エラー「参照が見つかりません」を完全解説!初心者でも原因と対処法がわかる

参照設定エラー「参照が見つかりません」の原因と解決方法を詳しく解説
参照設定エラー「参照が見つかりません」の原因と解決方法を詳しく解説

先生と生徒の会話形式で理解しよう

生徒

「ExcelでVBAを動かそうとしたら、参照が見つかりませんってエラーが出ました…」

先生

「VBEの参照設定が原因ですね。VBA初心者が最初につまずきやすいポイントです」

生徒

「参照設定って何ですか?パソコンもあまり触ったことがなくて…」

先生

「大丈夫です。仕組みから一つずつ説明します」

1. 「参照が見つかりません」とはどんなエラー?

1. 「参照が見つかりません」とはどんなエラー?
1. 「参照が見つかりません」とはどんなエラー?

Excel VBAでよく出るエラーに「参照が見つかりません」があります。これは、VBAが必要としている部品や道具が、どこにあるのか分からなくなっている状態です。

現実で例えると、電化製品を使おうとしたときに、コンセントが抜けていて動かないようなものです。VBAは、参照設定を通して必要な機能を読み込んでいます。

2. 参照設定とは何をしているのか

2. 参照設定とは何をしているのか
2. 参照設定とは何をしているのか

参照設定とは、VBAが使う追加機能の場所を指定する設定です。Excel標準だけでは使えない便利な機能を、外部ライブラリとして読み込みます。

VBE(Visual Basic Editor)の「ツール」→「参照設定」から確認できます。ここにチェックが入っている項目が、VBAで使える機能一覧になります。

3. エラーが発生する代表的な原因

3. エラーが発生する代表的な原因
3. エラーが発生する代表的な原因

「参照が見つかりません」が出る原因は、ほとんどの場合次のような理由です。

  • 他のパソコンで作られたExcelファイルを開いた
  • 参照しているファイルが削除・移動された
  • Officeのバージョン違い

特に、仕事でファイルを共有したときに発生しやすいエラーです。

4. 実際に参照エラーが出る例

4. 実際に参照エラーが出る例
4. 実際に参照エラーが出る例

例えば、次のようなVBAコード自体は正しくても、参照設定に問題があると実行できません。


Sub SampleTest()
    Dim msg As String
    msg = "テストです"
    MsgBox msg
End Sub

コードにエラーがなくても、参照設定が壊れていると、コンパイルエラーとして止まります。

5. 参照設定の確認と修正方法

5. 参照設定の確認と修正方法
5. 参照設定の確認と修正方法

VBEを開き、「ツール」→「参照設定」をクリックします。一覧の中にMISSING:と表示されている項目があれば、それがエラーの原因です。

初心者の方は、まずそのチェックを外して「OK」を押してください。多くの場合、それだけでエラーは解消されます。

6. 参照を外しても動く理由

6. 参照を外しても動く理由
6. 参照を外しても動く理由

使っていない参照設定が残っているだけの場合、チェックを外しても問題ありません。VBAは必要な機能だけあれば動きます。

不要な参照を外すことは、荷物を減らして軽くするようなものです。

7. 参照設定が必要なコード例

7. 参照設定が必要なコード例
7. 参照設定が必要なコード例

一方で、参照が本当に必要なケースもあります。例えば、辞書型オブジェクトを使う場合です。


Sub DictionarySample()
    Dim dict As Object
    Set dict = CreateObject("Scripting.Dictionary")
    dict.Add "A", "りんご"
    MsgBox dict("A")
End Sub

この場合は、Microsoft Scripting Runtime が正しく参照できている必要があります。

8. 参照エラーを防ぐための基本習慣

8. 参照エラーを防ぐための基本習慣
8. 参照エラーを防ぐための基本習慣

初心者のうちは、できるだけ標準機能だけでVBAを書くのがおすすめです。外部参照が少ないほど、エラーは起きにくくなります。

また、他人に渡すExcelファイルは、事前に参照設定を確認する習慣をつけると安心です。

9. 参照エラーは怖くない

9. 参照エラーは怖くない
9. 参照エラーは怖くない

「参照が見つかりません」という表示は、初めて見ると不安になりますが、原因と仕組みが分かれば対処は簡単です。

VBAはエラーを経験しながら理解が深まります。一つずつ確認していけば、必ず解決できます。

カテゴリの一覧へ
新着記事
New1
Excel VBA
目的別にモジュールを分割する方法!処理単位で整理して見やすくするテクニック
New2
Office Scripts
Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
New3
Office Scripts
Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
New4
Excel VBA
VBAクラスモジュールとは?メリットと基本的な使い方を初心者向けに解説
人気記事
No.1
Java&Spring記事人気No1
Office Scripts
Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
No.2
Java&Spring記事人気No2
Excel VBA
VBAクラスモジュールとは?メリットと基本的な使い方を初心者向けに解説
No.3
Java&Spring記事人気No3
Excel VBA
Excel VBAのプロジェクト構成とモジュール管理!標準・シート・ThisWorkbookの違い
No.4
Java&Spring記事人気No4
Office Scripts
Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
No.5
Java&Spring記事人気No5
Office Scripts
Office Scriptsの基本!Excel自動化で使うインターフェイスとスクリプト設計の考え方
No.6
Java&Spring記事人気No6
Office Scripts
Office Scriptsの基本!Excel自動化で学ぶエラーを防ぐ型チェックの活用方法
No.7
Java&Spring記事人気No7
Office Scripts
Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
No.8
Java&Spring記事人気No8
Excel VBA
Excel VBAプロジェクトを整理する方法!保守しやすいフォルダ・命名規則まとめ