2013-08-21 94 views
0

我有這個劇本,我想用移動的存檔文件夾,這是我的代碼:VBA訪問編譯錯誤變量

Public Function modbalsmovearhive() 
Set FSO = CreateObject("Scripting.FileSystemObject") 
FSO.MoveFile "H:\Credit_Bals*.xls", "H:\Bals_Archive\" 

End Function 

現在,當我去運行它,我得到的編譯錯誤變量未定義。有人能幫助我解決這個錯誤的最佳方法。

+1

在設置...行之前添加'Dim FSO As Object'。 –

+0

感謝它現在工作。 – ELS31987

回答

0

我想你可能已經忘記了維度對象,我用猜:

Dim FSO As FileSystemObject 

另外,還要確保你有檢查Microsoft腳本運行時參考。

+0

好吧,我添加了維度,它工作。謝謝 – ELS31987

1

我剛剛測試了代碼,它的工作原理。確保Option Explicit不是On,並確保已經包含了您在代碼中使用的所有庫。

編輯:這是不是很好的做法,讓選項顯式關閉,所以如果你想保持它,確保所有的變量聲明和你的庫包括在內。

+0

好的,謝謝我會檢查出選項顯式。 – ELS31987

0

另請注意,在將定義變量選項設置爲OFF之後,現有模塊將不會更改,即現有模塊將繼續具有Option Explicit。在這種情況下,您需要將代碼複製到新模塊。