我想聲明一種全局變量。我想要做的是初始化這些變量,然後在宏中使用它們,並在其他宏中更改它們的值。公共還是常量?
我開始寫它作爲公共變量:
Option Explicit
'definition of global variables
Public r_start As Integer
Public r_end As Integer
Public c_little As Integer
Public c_big As Integer
Public c_sel_start As Integer
Public c_sel_end As Integer
Public c_data_start As Integer
Public c_data_end As Integer
Public Sub Init_Globals()
' Access global variable initialization
r_start = 20
r_end = 833
c_little = 6
c_big = 5
c_sel_start = 1
c_sel_end = 4
c_data_start = 11
c_data_end = 101
End Sub
這裏的問題是,我在我的每個子過程的調用Sub_Init_Globals(),所以如果我想改變的初始值我其他SubProcedures內的全局變量,將不會做出這些更改。
你知道一種創建這種變量的方法嗎?
一種方法是使用包含變量的類模塊,並實例化該類模塊的一個實例。但這仍然容易受到「項目重置」的影響。 – Bathsheba
在Workbook_Open()事件中調用Init_Globals()是一種方法。 –