看板 Office 關於我們 聯絡資訊
調整後內容如圖 但執行結果變成把每個檔案中 第一個出現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
newacc: 跟上一篇推文相同,你沒有用到sht,也沒有設定誰要active 12/07 12:50
newacc: 所以只會一直對一開始active的工作表進行操作 12/07 12:51
newacc: 我建議跨工作表/檔案的狀況下,直接針對目標賦值就好 12/07 12:52
newacc: 也建議不要直接使用Range,標上父物件較明確也不容易出錯 12/07 12:54
newacc: tgtWb.Worksheets([name]).Range([xxx])= 12/07 12:56
newacc: sht.Range([xxx]) 12/07 12:56
newacc: 之類的 12/07 12:57
MayKA: 所以即使在end if後面寫next sht,也不會自動讓下一個工作 12/07 13:27
MayKA: 表是activesheet,然後判斷A14格是否為1? 12/07 13:27
newacc: 不會,Next sht只是讓excel知道該讓sht指向下一個工作表 12/07 14:16
newacc: 簡單的修正就是在迴圈最一開始加上sht.Activate 12/07 14:16
MayKA: 感謝N大的建議,加那句後就執行成功了! 12/07 18:12