Excel VBA:選択した範囲に重複データがあるかどうかをチェックするサンプルプログラム

Excelで選択したセル範囲の値に重複データがないかどうか調べるためのVBAのサンプルプログラムを覚書。

ワークシート関数のCOUNTIF関数をVBAの中で利用して重複をチェックする。

スポンサーリンク

サンプルプログラム概要

サンプルプログラムの処理の概要は以下の通り。

選択範囲のセル1つ1つについて以下の式を実行した結果を取得

COUNTIF("選択範囲","1番目のセル")

COUNTIF("選択範囲","2番目のセル")

COUNTIF("選択範囲","n番目のセル")

返ってきた結果が2以上であれば重複していることを意味しています。

サンプルプログラム

サンプルプログラムのコードを以下に記載します。

Sub chkDuplicate()
Dim rng As Range, r As Range, chkVal As Integer
Set rng = Range(Selection.Address)
For Each r In rng
    chkVal = Application.CountIf(rng, r)
        If chkVal > 1 Then
            r.Offset(0, 1).Value = "重複"
        Else
            r.Offset(0, 1).Value = ""
        End If
Next r
End Sub
 

サンプルプログラムの実行方法

重複を調べたいセル範囲を選択した状態でサンプルプログラムを実行します。

重複しているかどうかの結果を右隣のセルに表示するようになっているので、実行する前に必ず右隣のセルをあけておいてください。

コメント

タイトルとURLをコピーしました