【エクセルマクロ】色付き行を非表示にする:使用例3選

VBA-色付き行を非表示--アイキャッチ ExcelVBA

エクセルマクロで、色付き行を非表示にするVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。

色付き行を非表示

以下のExcelVBAを実行すると、塗りつぶされている行を非表示にします。


Sub 色がついている行を一括非表示()
 
Dim i As Long
Dim j As Long
Dim LastRow As Long
 
    '最終行を取得
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    
    Application.DisplayAlerts = False
 
    '行を逆ループ
    For i = LastRow To 1 Step -1
                
        'A列が色付きだったら
        If Cells(i, 1).Interior.ColorIndex <> xlNone Then
             
            '行を非表示
            Rows(i).Hidden = True
        End If
    Next i
 
    Application.DisplayAlerts = True
 
End Sub

 

マクロ実行後

A列に色がついている場合、行を非表示にします。


 

色付き行を非表示(指定色)

以下のExcelVBAを実行すると、特定色だったら行を非表示にします。


Sub 色がついている行を一括非表示()
 
Dim i As Long
Dim j As Long
Dim LastRow As Long
 
    '最終行を取得
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    
    Application.DisplayAlerts = False
 
    '行を逆ループ
    For i = LastRow To 1 Step -1
                
        'A列が黄色だったら
        If Cells(i, 1).Interior.Color = 65535 Then
             
            '行を非表示
            Rows(i).Hidden = True
        End If
    Next i
 
    Application.DisplayAlerts = True
 
End Sub

 

マクロ実行後

A列が黄色の場合、行を非表示にします。


 

色付き行を非表示(複数セル判定)

以下のExcelVBAを実行すると、着色されている行を一括で非表示にします。


Sub 色付きの行をまとめてに非表示()
    
Dim i As Long
Dim j As Long
Dim LastRow As Long
Dim LastClm As Long

    '最終列を取得
    LastClm = Range("A1").End(xlToRight).Column

    '最終行を取得
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row

    '行を逆ループ
    For i = LastRow To 1 Step -1

        '列をループ
        For j = 2 To LastClm

            '色付きだったら
            If Cells(i, j).Interior.ColorIndex <> xlNone Then

                '最終列まで色付きだったら
                If j = LastClm Then

                    '行を非表示
                    Rows(i).Hidden = True
                End If

            Else
                '色なしがあったら、次の行へ
                Exit For
            End If
        Next j
    Next i

End Sub

 

マクロ実行後

B列~F列がすべて色付きの場合、その行を非表示にします。

 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】色付けを自動化する使用例まとめ
 

【エクセルマクロ】色付け処理を自動化する:超便利32選
...

 

「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説