2012-07-06 78 views
0

我正在複製一個數組(Sheet1!A2:A831),並希望將它粘貼到Sheet2上!從A1開始每26排。寫一個宏,在每26行粘貼一個範圍

我用這個宏的工作,但我遇到了一些麻煩:

Sub test() 
Dim LR As Long, i As Long 
LR = Range("A" & Rows.Count).End(xlUp).Row 
Range("Sheet1!A2:A831").Copy 
For i = 26 To LR Step 26 
    Range("A" & i).PasteSpecial Paste:=xlPasteFormulas 
Next i 
End Sub 
+1

爲什麼要複製800多行的範圍,然後每26行粘貼一遍? – 2012-07-06 05:50:30

+0

只是組織SEO內容。每26行我開始一個新產品。我有830個產品。 – 2012-07-06 06:35:47

+0

'ThisWorkbook.Sheets(「Sheet1」)。Range(「A2:A831」)。Copy'如果您只是使用Range()而不用工作表進行限定,那麼它默認爲ActiveSheet上的一個範圍沒有範圍從Sheet1上的Sheet1 ...) – 2012-07-06 06:49:51

回答

0

這是你想什麼呢?

Sub test() 
    Dim LR As Long, i As Long, n As Long 

    With Sheets("Sheet1") 
     LR = .Range("A" & .Rows.Count).End(xlUp).Row 

     n = 1 

     For i = 2 To LR 'A2:A831 
      .Range("A" & i).Copy 
      Sheets("Sheet2").Range("A" & n).PasteSpecial _ 
      Paste:=xlPasteFormulas 

      n = n + 25 
     Next i 
    End With 
End Sub 
相關問題