Vba: 重複した値を削除する方法


VBA で重複する値を削除するには、次の方法を使用できます。

方法 1: 列に基づいて重複値を削除する

 Sub RemoveDuplicates()
    Range(" A1:C11 ").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

この特定の例では、範囲の最初の列の重複値に基づいて、範囲A1:C11内の重複行を削除します。

Header:=xlYes引数は、範囲内の最初の行がヘッダー行であり、重複をチェックするときに考慮すべきではないことを指定します。

方法 2: 複数の列に基づいて重複値を削除する

 Sub RemoveDuplicates()
    Range(" A1:C11 ").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub

この特定の例では、範囲の最初の 2 列の重複値に基づいて、範囲A1:C11内の重複行を削除します。

次の例は、Excel の次のデータ セットでこれらの各メソッドを実際に使用する方法を示しています。

例 1: 列に基づいて重複値を削除する

次のマクロを作成して、最初の列に重複した値を持つ行を削除できます。

 Sub RemoveDuplicates()
    Range(" A1:C11 ").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

このマクロを実行すると、次の出力が表示されます。

データセットの最初の列に重複する値を持つすべての行が削除されていることに注意してください。

例 2:複数の列に基づいて重複値を削除する

次のマクロを作成して、最初の 2 つの列に重複した値を持つ行を削除できます。

 Sub RemoveDuplicates()
    Range(" A1:C11 ").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub

このマクロを実行すると、次の出力が表示されます。

データセットの最初の 2 列に重複する値を含むすべての行が削除されていることに注意してください。

: VBA RemoveDuplicatesメソッドの完全なドキュメントはここにあります。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA:範囲内の値を追加する方法
VBA:範囲の平均値を計算する方法
VBA: 範囲内の一意の値を数える方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です