[英]Copy range based on a condition
我想編寫一個宏來僅復制具有數據的單元格范圍並忽略值為NA
單元格
我已經構建了一個輔助工具來確保從多個來源收集的數據放置在正確的相應列中,然后從那里復制這些列並將其粘貼到主工作表中。 這些值填充的范圍是A3
到R
並且在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
單程。
#N/A
這是你正在嘗試的嗎?
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.