更新日:、 作成日:
VBA エラー 変数が定義されていません。
はじめに
Excel VBA マクロのエラー「変数が定義されていません。」の対処法を紹介します。
変数名を入力ミスしたときに発生します。
宣言する位置によっても発生することがあります。
エラーの基本的な対処法は、エラー箇所の特定とその原因となったコードをデバッグします。
デバッグについては「デバッグの仕方」をご覧ください。
エラー処理については「エラー処理をする」をご覧ください。
解決する
変数について詳しくは「変数」をご覧ください。
コードの先頭に Option Explicit を入力すると変数の宣言を強制できます。そのとき宣言されていない変数を使用すると発生します。
Option Explicit ' 変数の宣言を強制する
Sub 実行()
tips = "found" ' エラー
Dim tips As String
tips = "found" ' OK'
End Sub
Public や Private の変数はすべての関数より上に宣言します。下に宣言した変数を使用するとエラーが発生します。
Private tips As Integer
Sub 実行()
tips = 1 ' OK
found = 2 ' エラー
End Sub
Private found As Integer ' 関数の上に宣言する必要がある
スコープについて詳しくは「スコープ」をご覧ください。
適切な場所で宣言しているときにエラーが発生するときは、入力ミスが原因です。スペルを間違っていないか確認すると解決できます。