我一直在使用本地窗口來檢查過程級別變量的分配。檢查Excel VBA中公共變量的值 - 本地窗口備選
我最近更新了我的代碼,以創建一組公共級變量,這些變量從工作表中讀取某些不會改變的工作表的輸入。
當試圖檢查這些變量時,我沒有在Locals窗口中看到它們,毫無疑問,因爲它們不是本地定義的變量!
是否有替代公共變量的本地窗口?如果不是,我該如何檢查公共變量賦值?
我一直在使用本地窗口來檢查過程級別變量的分配。檢查Excel VBA中公共變量的值 - 本地窗口備選
我最近更新了我的代碼,以創建一組公共級變量,這些變量從工作表中讀取某些不會改變的工作表的輸入。
當試圖檢查這些變量時,我沒有在Locals窗口中看到它們,毫無疑問,因爲它們不是本地定義的變量!
是否有替代公共變量的本地窗口?如果不是,我該如何檢查公共變量賦值?
除了(如其他答案所述)立即窗口,監視窗口是在這種情況下非常有用。您可以在查看菜單激活 - >監視窗口:
在這裏,您可以定義:
ActiveWorkbook.UsedRange.Address
True
價值的變化或結果 - 這是相當方便的調試時,因爲它可以讓你無需增加額外的代碼快速條件斷點,例如如果設置了手表myVar=0
和積極休息的時候值爲True,代碼會自動停止存在的潛在問題是「開始」的那一刻您可以將所有這些選項中的「添加表」對話框,您通過右鍵單擊代碼模塊中的任何變量(或其他代碼)獲得 - 或在監視窗口中右擊:
此外,你可以簡單地編輯任何表項目在列表中雙擊。
非常方便的調試工具,結合當地人和立即窗口。
謝謝。這周我會試試這個。 – psychonomics 2013-02-24 12:30:32
使用立即窗口。在您的編碼環境中按Ctrl + G即可轉到立即窗口。 它允許您在調試模式下獲取和設置變量的值。 你需要前綴?檢查變量的值。 例如
?variableName press enter to get the value
variableName ="test" press enter to set the value
謝謝。這就說得通了。這周我會試一試。 – psychonomics 2013-02-24 12:34:10
嗨,你可以分享一些代碼?我試圖做你說的,但我仍然可以在本地窗口中看到公共變量(http://postimage.org/image/9dor72s0v/) – 2013-02-22 19:16:18
讓我看看我能否在本週提供一些示例代碼。 – psychonomics 2013-02-24 12:31:32
嗨保羅。我意識到這是幾周前,但我不是經常編碼!無論如何,我認爲你使用Dim可以在程序或模塊級別而不是全局級別聲明mytext。在我的代碼中,我使用Public來聲明我的全局變量。 – psychonomics 2013-03-08 15:38:21