[VBA] 讀取檔案欄位

作者: darklimit (darklimit)   2021-11-25 14:56:43
請問各位大神
目前程式是寫在A檔案
然後現在B檔案也有打開
但現在這樣寫法B檔案會無法讀取
應該怎麼修改比較好,謝謝
Windows(“B..xlsx”).Activate
row1 = Sheet1.Cells(1,3).End(xlDown).Row
在A檔案裡
這樣執行是沒問題的
Windows(“A.xlsx”).Activate
row1 = Sheet1.Cells(1,3).End(xlDown).Row
作者: lalacos123 (大叔是隻貓)   2021-11-25 17:21:00
你的無法讀取是?抓不到值?會show error?
作者: darklimit (darklimit)   2021-11-25 22:54:00
會出現陣列索引超出範圍
作者: chunchanhung (毛毛狂)   2021-11-26 00:04:00
Windows(“B..xlsx”).Activate名稱 多了一個”.”
作者: darklimit (darklimit)   2021-11-26 00:25:00
那是發文誤打啦,實際上沒有打到兩個點,抱歉造成誤會...
作者: a24626296 (DD)   2021-11-26 12:51:00
B有幾個sheet?
作者: lalacos123 (大叔是隻貓)   2021-11-26 13:38:00
還是sheets(1)不是sheet1 如果你沒先set過的話
作者: napyang (愛唱歌的大男孩)   2021-11-26 17:52:00
建議可以不需要用active的方式。改成set BookB=workbooks(“B…xlsx”),然後用BookB.worksheets(1).cells(balabala)去取值
作者: waiter337 (給開司一罐蘇格登)   2021-11-28 22:54:00
直接用檔名比較穩 workbook("a.xlsx").sheet1........很臭很長可以直接 set ws=workbooks("a.xlsx").sheet1.後面這一長串就用ws代替就可以了^的程式碼,假如要用到windows(xxx).active 這段其實不好用
作者: darklimit (darklimit)   2021-12-01 10:59:00
感謝各位大神,後來用Set去寫就可以了,謝謝~

Links booklink

Contact Us: admin [ a t ] ucptt.com