簡體   English   中英

Excel 2010-單元格的宏復制范圍,而不是整個行

[英]Excel 2010 - Macro Copy range of cells instead of entire row

我嘗試使用來自類似威脅的反饋-但是我似乎無法在我的代碼中實現其中的任何一個。 我不喜歡宏,因為我是宏的新手!

我有一個帶有數據透視表的電子表格,如果K2 =“ Create”,我希望從中復制A2:J2。 我的宏有效,但正在復制整行,有人可以幫我嗎?

Sub Create()
Dim RngColF As Range
Dim i As Range
Dim Dest As Range

Sheets("Data").Select
Set RngColF = Range("K1", Range("K" & Rows.Count).End(xlUp))

With Sheets("Open quotes")
    Set Dest = .Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End With

For Each i In RngColF
    If i.Value = "Create" Then
        i.EntireRow.Copy Dest
        Set Dest = Dest.Offset(1)
        Sheets("Open quotes").Select
    End If
Next i
End Sub

嘗試

Sub Create()
Dim RngColF As Range
Dim i As Range
Dim Dest As Range

Sheets("Data").Select
Set RngColF = Range("K1", Range("K" & Rows.Count).End(xlUp))

With Sheets("Open quotes")
    Set Dest = .Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End With

For Each i In RngColF
    If i.Value = "Create" Then
        range(cells(i.row,1).address,cells(i.row,10).address).copy Dest
        Set Dest = Dest.Offset(1,0)
        Sheets("Open quotes").Select
    End If
Next i
End Sub

我不確定要將數據復制到哪里。 如果它在數據表中,則在選擇“開放式報價”時會出現問題,因此第二次運行將從“開放式報價”中復制。 可能想解決這個問題。

編輯:為了完整的Sheets(“ Open quotes”)。Select應該(並相信OP已經)移到了代碼的末尾

暫無
暫無

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

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