2017-09-02 200 views
3

嘗試寫入宏以複製單元格並將其粘貼到接下來的三個單元格中。然後複製第五個單元格並將其粘貼到第6,7和8號行中的單元格。我需要以這種方式複製粘貼的行中有很多數據。到目前爲止,我有這樣的事情。複製單元格並將其粘貼到下一個單元格的宏代碼

Sub copycell() 
    for i= 1 to 1000 

    Cells(1, i).Select 
    Selection.copy 
    Cells(1,i+1).Select 
    Selection.Paste  
    end if 
    End sub 
    next i 

回答

3

嘗試

Sub copycell() 
    For i = 1 To 1000 Step 4 
     Cells(1, i).Copy 
     Range(Cells(1, i + 1), Cells(1, i + 3)).PasteSpecial 
    Next i 
End Sub 

或簡單地

Sub copycell() 
    For i = 1 To 100 Step 4 
     Range(Cells(1, i + 1), Cells(1, i + 3)).Value = Cells(1, i).Value 
    Next i 
End Sub 

Step關鍵字用來指定爲一個循環的計數器變量不同的增量。 Step更改用於增加計數器的值。在這種情況下,i將通過4即從1 to 5遞增然後9然後13等等...

上面的代碼將對面的右側連續複製單元格。
如果你想在一列中複製單元格,那麼你可以使用下面的代碼。

Sub copycell() 
    For i = 1 To 100 Step 4 
     Range(Cells(i + 1, 1), Cells(i + 3, 1)) = Cells(i, 1) 
    Next i 
End Sub 
1

這,爲了從第一小區移動到第五單元中的每個循環之間的4個步驟。

Sub copycell() 
for i= 1 to 1000 step 4 
Cells(1,i+1) = Cells(1, i) 
Cells(1,i+2) = Cells(1, i) 
Cells(1,i+3) = Cells(1, i)  
next i 
End sub 
相關問題