过滤后复制并粘贴单元格

时间:2012-10-04 18:03:37

标签: excel vba copy autofilter

我在A列中有一些值,其中包含负值和正值以及我写下面的值,以便在相邻列中过滤和复制相同的值。

但我需要的是过滤后如果a3,a7,a8具有负值,则它们应该复制到相邻的单元格b3,b7,b8.Am无法得到它。

请帮助........

Sub AutoFilter_in_Excel()
Range("A1").AutoFilter Field:=1, Criteria1:="<0", Operator:=xlAnd
Worksheets("sheet1").Range("A2:A7").Copy _
Destination:=Worksheets("sheet1").Range("c2")
Range("A1").AutoFilter Field:=1, Criteria1:=">0", Operator:=xlAnd
Worksheets("sheet1").Range("A2:A7").Copy _
Destination:=Worksheets("sheet1").Range("b2")
End Sub 

1 个答案:

答案 0 :(得分:0)

这样做。您遇到的问题是您无法复制具有多个区域的范围。

Sub AutoFilter_in_Excel()
Dim rg As Range

With Range("A1").CurrentRegion
    .AutoFilter Field:=1, Criteria1:="<0"

    For Each rg In .Resize(.Rows.Count - 1).Offset(1).SpecialCells(xlCellTypeVisible).Areas

        rg.Copy rg.Offset(, 1)

    Next rg

End With

End Sub