Board logo

標題: [發問] 關於工作表移動到新活頁簿 [打印本頁]

作者: feecshyrnd    時間: 2016-3-17 16:52     標題: 關於工作表移動到新活頁簿

以下代碼是將活頁簿裡所有 sh開頭的工作表刪除
For I = Worksheets.Count To 1 Step -1
If Worksheets(I).Name Like "Sh*" Then
Worksheets(I).Delete
End If
Next

改成下列方式可以將 sh開頭的工作表移動到新活頁簿裡
工作表可以正確移動但代碼卻會出現錯誤
不知道問題出在那裡
For I = Worksheets.Count To 1 Step -1
If Worksheets(I).Name Like "Sh*" Then
Worksheets(I).MOVE
End If
Next
作者: 訪客    時間: 2016-3-18 21:21

回復 1# feecshyrnd
若要移動多個工作表,以你所用的迴圈方式處理會造成錯誤,因為每迴圈一次後移出的工作表會自成一個Excel檔,且該檔會變成作用中,除非再恢復原始檔成作用中。

因此若要將多數符合條件的工作表移到一個檔案中(非一個工作表一個檔案)時,建議將要移出的工作表先行打包,再以一次性的MOVE才可完成你所要求的結果。




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)