隱式和顯式宣告

如果程式碼模組在模組頂部不包含 Option Explicit,則編譯器將在你使用它們時自動(即隱式)為你建立變數。它們將預設為變數型別 Variant

Public Sub ExampleDeclaration()    

    someVariable = 10                  ' 
    someOtherVariable = "Hello World"
    'Both of these variables are of the Variant type.

End Sub

在上面的程式碼中,如果指定了 Option Explicit,程式碼將中斷,因為它缺少 someVariablesomeOtherVariable 所需的 Dim 語句。

Option Explicit

Public Sub ExampleDeclaration()   

    Dim someVariable As Long 
    someVariable = 10

    Dim someOtherVariable As String
    someOtherVariable = "Hello World"

End Sub

在程式碼模組中使用 Option Explicit 被認為是最佳實踐,以確保宣告所有變數。

請參閱 VBA 最佳實踐預設情況下如何設定此選項。