Public Sub 不開啟工作簿寫入資料()
'官網:ChDir 陳述式會變更預設目錄或資料夾,但不會變更預設磁碟機。
'陳述式 ChDrive 會變更預設磁碟機。
ChDrive "D" '此為後加入
ChDir "D:\VBA\測試夾\" '此為後加入
'原書中範例碼
Workbooks("容器更新測試123.xlsx").Worksheets("工作表1").Range("A1") = "不開工作簿的測試"
End Sub
編譯後出現如下:

問題1?請問這是何意?如何解決呢?
'-------------------------------------------------------------'將工作簿開啟再輸入用
Public Sub 開啟工作簿後再輸入()
Workbooks("容器更新測試123.xlsx").Activate
Worksheets(1).Select
[a1] = "開啟工作簿後輸入測試"
End Sub
第二巨集執行編譯結果:

偵錯顯示出在啟用那列

(註:縱始我將第一巨集內的
ChDrive "D" '此為後加入
ChDir "D:\VBA\測試夾\" '此為後加入
這二列加入到第二巨集內,同樣會錯在這列上)
問題2:換言之這路徑設定好像並不需要,恩?是這樣嗎?謝謝
'--------------------------------------------------------------但若我將工作簿 "容器更新測試123.xlsx" 檔案先開啟後
則巨集一、巨集二都可順利將A1之值填入..
只是這樣一來根本就無法解決我的問題了= ="
(註2:在巨集的信任位置處我也將該兩檔案的存放位置已設定為信任位置(且包含內部的子資料夾)
因巨集一的來源取自於書本,故應該是可行的..唯超出範圍的意思實在不解
恩~~請達人幫幫忙..解個疑惑...正在努力google中.....
======================
剛剛看了下,不同的模組其設定引用的項目並不一樣,我原先以為只有設定好了後,所有的工作簿,其引用的地方都會統一..
只是猜想會不會是這裡我要勾選什麼才能解決那個執行階段錯誤9'
陣列索引超出範圍的詭異雜症呢?
或是說,問題不在引用上?
對了,我這兩個檔,一個是以.xlsm存放(當使用檔)
另一個檔名為 "容器更新測試123.xlsx" (則是用來當目的檔)
兩檔皆存放在同一目錄下..
以上感謝