重複したセルとその行全体を非表示にする

重複したセルとその行全体を非表示にする

以下に示すように、3 つの列を持つデータ セットの範囲があります。

0 abc def
0 geh ijk
0 lmn nop
5 qrs tuv
5 wxy zab
5 cde fgh
10 ab cd
10 ef gh
10 ij kl

最初の列には 0、5、10 などが繰り返されています。

最初の値と行全体だけを保持し、残りの重複した 0、5、10 を非表示にしたいです。

データセットの範囲が広く、最初の列の各値に 9 つの重複値があります。

答え1

Sub hide_duplicates()
Dim OneCell As Range
For Each OneCell In Range("A2:A10") ' data range
    If OneCell.Value = OneCell.Offset(-1, 0).Value Then
        OneCell.EntireRow.Hidden = True
    End If
Next
End Sub

答え2

sub hideDupes()

   dim r as range

   with worksheets("sheet1")
       for each r in .range(.cells(1, "a"), .cells(.rows.count, "a").end(xlup))
           r.entirerow.hidden = cbool(r.row > application.match(r.value, .range("a:a"), 0))
        next r
    end with

end sub

答え3

Advanced Filter数式条件で を使用できます:

=COUNTIF(A8:$A$8,A8)=1

前に

ここに画像の説明を入力してください

高度なフィルターダイアログ

ここに画像の説明を入力してください

ここに画像の説明を入力してください

関連情報