對不起,尋求幫助,但我一直在嘗試大量的宏,沒有做的工作權。我不知道在哪裏尋找解決方案。VBA:自動過濾一個範圍並複製到現有的工作表
- 我有一個名爲「ABC」其中I具有由用戶inputed成範圍的數據表:F(從A2開始石南&去下可能高達20.000行)。
- 在列GI有標準(是/否)
所以我想所有的行復制(粘貼值&保持格式化)至A:F其中G =「是」,另一個名爲表「 ANAF ANG「放入指定的範圍(相同的A:F,開始A2)。
注意:數據複製的初始工作表必須在完成後清除過濾器。
如何..?
對不起,尋求幫助,但我一直在嘗試大量的宏,沒有做的工作權。我不知道在哪裏尋找解決方案。VBA:自動過濾一個範圍並複製到現有的工作表
所以我想所有的行復制(粘貼值&保持格式化)至A:F其中G =「是」,另一個名爲表「 ANAF ANG「放入指定的範圍(相同的A:F,開始A2)。
注意:數據複製的初始工作表必須在完成後清除過濾器。
如何..?
您可以使用此註釋代碼:
Sub main()
With Sheets("ABC") '<--| reference your sheet
With .Range("G1", .Cells(.Rows.Count, 1).End(xlUp)) '<--| reference its column "A:G" range from row 1 down to column "A" last not empty row
.AutoFilter Field:=7, Criteria1:="yes" ''<--| filter referenced range on its 7th column (i.e. column "G") with "yes" values
If Application.WorksheetFunction.Subtotal(103, .Resize(, 1)) > 1 Then .Resize(.Rows.Count - 1, 6).Offset(1).SpecialCells(xlCellTypeVisible).Copy Destination:=Worksheets("ANAF ANG").Range("A2")
End With
.AutoFilterMode = False
End With
End Sub
謝謝。我宣佈自己是個白癡。 :) – MisterA
不客氣。好的編碼! – user3598756