簡體   English   中英

Excel- VBA- 將范圍從一張工作表復制到多個命名工作表

[英]Excel- VBA- Copy Range From One Sheet To Multiple Named Sheets

嘗試將范圍從 Sheet1 復制到 31 個工作表上的相同范圍,但不斷收到“運行時錯誤 1004:工作表類的粘貼方法失敗”,調試器指示ActiveSheet.Paste是問題所在。 我可以復制到單張紙沒有問題,但不能復制到多張紙。 我試過到處尋找,但無法弄清楚問題是什么(這也可能很簡單)。

Sheets("Sheet1").Range("A1:AR34").Copy
Sheets(Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", _
    "16", "17", "18", "19", "20", "21", "22", "23", "24", "25")).Select
Sheets("1").Activate
Sheets(Array("26", "27", "28", "29", "30", "31")).Select Replace:=False
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False

您可以直接使用.Copy方法而無需.Select

Sub Bouton1_Clic()
    Dim wsList() As String, wsName As Variant, ws As Worksheet
    Dim wsSource As Worksheet: Set wsSource = ThisWorkbook.Sheets("Sheet1")

    wsList = Split("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31", " ")

    For Each wsName In wsList
        Set ws = ThisWorkbook.Sheets(wsName)
       
        wsSource.Range("A1:AR34").Copy
        ws.Range("A1").PasteSpecial xlPasteValues
        Application.CutCopyMode = xlCopy
    Next wsName

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM