Re: [問題] vba撈取指定工作表

看板Office作者時間2年前 (2022/12/07 12:22), 編輯推噓0(0012)
留言12則, 2人參與, 1年前最新討論串2/2 (看更多)
調整後內容如圖 但執行結果變成把每個檔案中 第一個出現Sheet的指定範圍,重複貼上好幾次 其他sheet內容並未複製貼入 想詢問應如何調整寫法 謝謝 https://i.imgur.com/BAbSdSG.jpg
https://i.imgur.com/Tc508uD.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.59.86 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1670386929.A.668.html

12/07 12:50, 1年前 , 1F
跟上一篇推文相同,你沒有用到sht,也沒有設定誰要active
12/07 12:50, 1F

12/07 12:51, 1年前 , 2F
所以只會一直對一開始active的工作表進行操作
12/07 12:51, 2F

12/07 12:52, 1年前 , 3F
我建議跨工作表/檔案的狀況下,直接針對目標賦值就好
12/07 12:52, 3F

12/07 12:54, 1年前 , 4F
也建議不要直接使用Range,標上父物件較明確也不容易出錯
12/07 12:54, 4F

12/07 12:56, 1年前 , 5F
tgtWb.Worksheets([name]).Range([xxx])=
12/07 12:56, 5F

12/07 12:56, 1年前 , 6F
sht.Range([xxx])
12/07 12:56, 6F

12/07 12:57, 1年前 , 7F
之類的
12/07 12:57, 7F

12/07 13:27, 1年前 , 8F
所以即使在end if後面寫next sht,也不會自動讓下一個工作
12/07 13:27, 8F

12/07 13:27, 1年前 , 9F
表是activesheet,然後判斷A14格是否為1?
12/07 13:27, 9F

12/07 14:16, 1年前 , 10F
不會,Next sht只是讓excel知道該讓sht指向下一個工作表
12/07 14:16, 10F

12/07 14:16, 1年前 , 11F
簡單的修正就是在迴圈最一開始加上sht.Activate
12/07 14:16, 11F

12/07 18:12, 1年前 , 12F
感謝N大的建議,加那句後就執行成功了!
12/07 18:12, 12F
文章代碼(AID): #1Za1JnPe (Office)
文章代碼(AID): #1Za1JnPe (Office)