2016-11-14 9 views
0

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 

答えて

3

値としてそれを貼り付けるようにしてください:

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 
0

あなたは非式の値を考慮したい場合は、この使用し、ワークシート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 
関連する問題