[[20190104003446]] 『VBA 重複チェック 』(初心者) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBA 重複チェック 』(初心者)

下記のようなエクセルファイルで重複する行を塗りつぶしするVBAを考えております。
1つのセルに対する重複塗りつぶしは下記コードでいけますが、
A列 B列両方が重複する方法がわかりません。

   A列  B列  
 
1  1/5  みかん
2  1/5  りんご
3  1/6  すいか
4  1/5  みかん
5  1/6  りんご

1行と4行を塗りつぶし

Sub Test1()
Dim i As Long, j As Long
For i = 1 To 1000
For j = 1 To 2
If WorksheetFunction.CountIf(Range("A1:B1000"), Cells(i, j)) > 1 Then
Cells(i, j).Interior.ColorIndex = 6
End If
Next j
Next i
End Sub

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 条件付き書式
 =SUMPRODUCT(($A$1:$A$5=$A1)*($B$1:$B$5=$B1))>1

 ロジックの勉強ならすみません。
(BJ) 2019/01/04(金) 00:52

Sub test2()
    Dim i As Long, j As Long, k As Long
    k = Cells(Rows.Count, 1).End(xlUp).Row
    For i = 1 To k
        For ii = 1 To k
        If i <> ii Then
        If Cells(ii, 1) = Cells(i, 1) And Cells(ii, 2) = Cells(i, 2) Then Range(Cells(i, 1), Cells(i, 2)).Interior.ColorIndex = 6
        End If
        Next ii
    Next i
End Sub
(mm) 2019/01/04(金) 09:39

 2016ならCOUNTIFSが使えるので

 Sub Test1()

     Dim i As Long

     For i = 1 To 1000
         If WorksheetFunction.CountIfs(Range("A1:A1000"), Cells(i, 1), Range("B1:B1000"), Cells(i, 2)) > 1 Then Range(Cells(i, 1), Cells(i, 2)).Interior.ColorIndex = 6
     Next i

 End Sub
(bi) 2019/01/04(金) 10:54

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.