【エクセルマクロ】数値が0の行を非表示にする:作業効率アップの方法

エクセルマクロ_数値が0の行を非表示_アイキャッチ エクセルマクロで効率化する

エクセルマクロで、数値が0の行を非表示にするVBAコードをご紹介します。

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

数値が0の行を非表示にする

以下のExcelVBAを実行すると、数値が0の行を非表示にします。

Sub 数値がゼロの行を非表示()
 
    Dim i As Long
    Dim LastRow As Long
 
    '最終行
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
 
    '行をループ
    For i = LastRow To 1 Step -1
         
        If Cells(i, 2) = "0" Then
         
            '行を非表示
            Rows(i).Hidden = True
         
        End If
    Next i
 
End Sub

 

マクロ実行後

値がゼロの行を自動で非表示にしました。

[Rows(i).Hidden = True] は、該当の行を非表示にします。


 
 

数値が0の行を非表示にする(複数セルを判定)

以下のExcelVBAを実行すると、数値が0の行を一気に非表示にします。

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
                
            '値が0だったら
            If Cells(i, j) = "0" Then
                 
                '最終列まで0だったら
                If j = LastClm Then
                 
                    '行を非表示
                    Rows(i).Hidden = True
                End If
            
            Else
                '値に0以外があったら、次の行へ
                Exit For
            End If
         
        Next j
    Next i
 
End Sub

 

マクロ実行後

B~Fの値がすべてゼロの行を表示しないようにしました。

下図ではマクロ結果が分かりやすいように、

「0」のセルに色付けしてから、マクロを動作させています。

 
 

【エクセルマクロ】数値が0の行を削除する:作業効率アップの方法
...