簡體   English   中英

基於條件的復制范圍

[英]Copy range based on a condition

我想編寫一個宏來僅復制具有數據的單元格范圍並忽略值為NA單元格

我已經構建了一個輔助工具來確保從多個來源收集的數據放置在正確的相應列中,然后從那里復制這些列並將其粘貼到主工作表中。 這些值填充的范圍是A3R並且在R列中是Vlookup

我想編寫一個宏,以便我可以按下啟用宏的按鈕來復制該范圍內的單元格,並在Vlookup停止返回值的位置結束。 到目前為止,我已經能夠編寫它,因此它會復制到Vlookup的末尾,但它仍在收集包含R公式的結果。

目前寫作:

Sub Copy()
    Dim ws As Worksheet
    Set ws = Sheets("Sheet1")
    ws.Range(ws.[A:R], ws.Cells(Rows.Count, "R").End(xlUp)).Copy
End Sub

單程。

  1. 使用自動過濾器。
  2. 過濾掉不是#N/A
  3. 一次性復制過濾范圍。

這是你正在嘗試的嗎?

Option Explicit

Sub Sample()
    Dim ws As Worksheet
    Dim rng As Range, filteredrng As Range
    Dim lrow As Long

    Set ws = Sheet1 '<~~ Change this to the relevant sheet

    With ws
        .AutoFilterMode = False

        lrow = .Range("R" & .Rows.Count).End(xlUp).Row

        Set rng = .Range("A3:R" & lrow)

        With rng
           .AutoFilter Field:=18, Criteria1:="<>#N/A"
            Set filteredrng = .Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow
        End With

        If Not filteredrng Is Nothing Then
            '~~> COPY RANGE CODE HERE
        End If

        .AutoFilterMode = False
    End With
End Sub

在此處輸入圖片說明

暫無
暫無

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

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