簡體   English   中英

Excel VBA宏:復制范圍

[英]Excel VBA Macro: copy range

Dim LastRow As Long
 LastRow = Sheets("Sheet1").Cells(Sheets("sheet1").Rows.Count, "A").End(xlUp).Row
 Sheets("Sheet1").Range("A" & LastRow + 1).FormulaR1C1 = "=WORKDAY(R[-1]C,1)"
 lastrow2 = Sheets("Sheet1").Cells(Sheets("sheet1").Rows.Count, "A").End(xlUp).Row

 'Copy cells
 Sheets("sheet1").Range(??????).Copy
 'Destination
 Sheets("Sheet1").Range("G" & lastrow2 - 3).PasteSpecial xlPasteValues
End Sub

伙計們,我在將范圍lastrow復制到lastrow 2時遇到問題。范圍是(“ G”列上的lastrow -3直到“ O”列上的lastrow)。 預期結果在范圍內(lastrow2 -3列“ G”直到列“ O”上的lastrow2)。 有關其他信息,范圍未完全填滿。 范圍上有一些空白。 這意味着我要復制的范圍。 但是我不知道如何設置范圍。 請幫我。 我有專業技能,但是因為我還沒有聲譽,所以我不允許附加圖像。

在此處輸入圖片說明

在圖片中,您圈出了F列,但在您的問題中,您提到了G。 我假設您的lastrow值正確,鑒於您的情況,這沒有任何意義,但這是我的假設。 我還假設LastRow會告訴您復制范圍的最底行是哪一行。

With Sheets("Sheet1")
    Dim rCopy As Range
    Set rCopy = .Range(.Cells(LastRow -2, "G"), .Cells(LastRow, "O"))
    rCopy.Select
    rCopy.Copy
 End With

但是,我不清楚您要做什么,如果可能,我不會使用復制和粘貼。

Edit2:您可能還必須更改粘貼行,以便它使用-2而不是-3。

暫無
暫無

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

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