看板 Office 關於我們 聯絡資訊
(若是和其他不同軟體互動之問題 請記得一併填寫) 軟體:excel vba 版本:2016 需求: 1.新增工作表“工作表3” 2.複製“工作表1”D欄到W欄的資料 3.貼值到工作表3 4.因程式碼所在活頁簿與欲執行的活頁簿不同,只好在workbook前面加入Active 程式碼如下: Sub Copy() ActiveWorkbook.Worksheets.Add().Name = "工作表3" ActiveWorkbook.Sheets("工作表1").Select Columns("D:W").Select Selection.Copy ActiveWorkbook.Worksheets("工作表3").Select Range("A1").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub 結果: 出現如標題所述的錯誤訊息(下圖), 而且時好時壞, 有時候又能成功執行, 請問是什麼原因及如何修改呢? https://i.imgur.com/hcH6VdE.jpg -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.21.7.223 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1621594169.A.186.html ※ 編輯: jumbotest (211.21.7.223 臺灣), 05/21/2021 18:53:18 ※ 編輯: jumbotest (211.21.7.223 臺灣), 05/21/2021 19:02:25
foolkids: 按下確定後,程式停在哪裡呢?05/21 21:21
foolkids: 你每次執行前,都會刪除工作表3嗎?05/21 21:21
會唷, 停在倒數第二行的Selection.PasteSpecial(下略), 然後excel就當了, 只能用工作管理員強制停止。 ※ 編輯: jumbotest (1.169.22.241 臺灣), 05/22/2021 00:45:03 ※ 編輯: jumbotest (1.169.22.241 臺灣), 05/22/2021 00:45:19
a29976137: 怎麼不直接指定? 05/22 08:19
foolkids: 試著把xlPasteValues後面的都刪掉試試看(含逗號) 05/22 08:30