隱式和顯式宣告
如果程式碼模組在模組頂部不包含 Option Explicit
,則編譯器將在你使用它們時自動(即隱式)為你建立變數。它們將預設為變數型別 Variant
。
Public Sub ExampleDeclaration()
someVariable = 10 '
someOtherVariable = "Hello World"
'Both of these variables are of the Variant type.
End Sub
在上面的程式碼中,如果指定了 Option Explicit
,程式碼將中斷,因為它缺少 someVariable
和 someOtherVariable
所需的 Dim
語句。
Option Explicit
Public Sub ExampleDeclaration()
Dim someVariable As Long
someVariable = 10
Dim someOtherVariable As String
someOtherVariable = "Hello World"
End Sub
在程式碼模組中使用 Option Explicit 被認為是最佳實踐,以確保宣告所有變數。
請參閱 VBA 最佳實踐預設情況下如何設定此選項。