【问题标题】:copy and paste non duplicate values only from formula column仅从公式列复制和粘贴非重复值
【发布时间】:2017-03-28 03:26:48
【问题描述】:

我正在尝试将不重复的值从一张表复制并粘贴到 Excel 中的另一张表。我只需要从公式列中复制和粘贴唯一值。我在堆栈交换中尝试了以下代码,但它仅适用于非公式列。如何仅从公式列复制粘贴不重复的值?

 Sub CopyUnique()
    Dim s1 As Worksheet, s2 As Worksheet
    Set s1 = Sheets("Main")
    Set s2 = Sheets("Count")
    s1.Range("B:B").Copy s2.Range("A1")
    s2.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo
End Sub

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    尝试将其粘贴为值:

    Sub CopyUnique()
        Dim s1 As Worksheet, s2 As Worksheet
        Set s1 = Sheets("Main")
        Set s2 = Sheets("Count")
        s1.Range("B:B").Copy 
        s2.Range("A1").PasteSpecial xlPasteValues
        s2.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo
    End Sub
    

    【讨论】:

      【解决方案2】:

      如果您想考虑工作表s1 中的非公式值并将其唯一值粘贴到工作表s2 中,请使用以下命令:

      Sub CopyUnique()
          Dim s1 As Worksheet, s2 As Worksheet
      
          Set s1 = Sheets("Main")
          Set s2 = Sheets("Count")
      
          s1.Range("B:B").SpecialCells(xlCellTypeConstants).Copy
          With s2
              .Range("A1").PasteSpecial xlPasteValues
              .Range("A1", .Cells(.Rows.count, 1).End(xlUp)).RemoveDuplicates Columns:=1, Header:=xlNo
          End With
      End Sub
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-19
        相关资源
        最近更新 更多