2016-12-16 339 views
0

我正在尋找如何複製數據範圍,直到非空行/空行。例如,我有列A上的數據列表直到G.我想複製這些範圍上的數據直到最後一行。我有代碼,可以找到最後一行如下:Excel VBA - 複製範圍爲非空行

Sheets("REFS").Range("E1").End(xlDown).Select 
    Rows(Selection.Row).Select 
    Selection.Copy 

    Sheets("TP1").Range("A2").PasteSpecial xlPasteValues 
+1

先找到你以前張貼的問題發表評論的時間,並給予反饋 –

+0

@ShaiRado哪一個?因爲我主要檢查我是否答覆或評論自己,如果我找到答案。 – Jeeva

回答

2

這是它。我這裏測試,它似乎工作

Sub CopyAllRows() 
    Dim j As Long 

    Dim refs As Worksheet 
    Set refs = Sheets("REFS") 

    Dim tp1 As Worksheet 
    Set tp1 = Sheets("TP1") 

    Dim src As Variant 

    j = refs.Range("E1").End(xlDown).Row 
    src = refs.Range("A1:G" & j).Value 
    tp1.Range("A2:G" & j + 1).Value = src 

End Sub 
+0

老兄,你是救命恩人! – Jeeva

+0

就像一個人一樣,有一個「我一樣長」,但沒有使用。你可以刪除它。我編輯帖子修復代碼 – Moacir

+0

沒問題。弄清楚了。 – Jeeva