复制/粘贴过滤后的单元格vba

时间:2011-11-08 21:21:33

标签: excel vba

B列包含数字17,1408和一些格式为000000-000-00

的数字

我为包含“ - ”的单元格设置了一个过滤器。它显示了上面格式的数字。

我想将它们复制到A列,但它们中的每一个都在同一行。

如果我选择然后复制/粘贴它将告诉我它不能通过多个选择来执行此操作。

有解决方案吗?

3 个答案:

答案 0 :(得分:1)

在A2:

=IF(ISERROR(SEARCH("-",B2)),"",B2)

在Col A中填写公式。如果需要从公式转换为固定值,请使用copy / pastespecial-values。

答案 1 :(得分:0)

  1. 制作新专栏。
  2. 在新列中,输入此公式并填写整个数据集:

    =IF(ISNUMBER(SEARCH("-",B1)),"Match","")

  3. 使用新列对表格进行排序。然后你可以复制&糊。

答案 2 :(得分:0)

这对我有用:

Private Sub CopyRange()

    Dim r1 As Range
    Dim r2 As Range

    Set r1 = ActiveSheet.Range("A1:C1,A3:C3")
    Set r2 = ActiveSheet.Range("D5")

    r1.Copy r2

End Sub

作为旁注,您可以在代码或excel中使用advanced filter,并指定要复制到的范围。