VBA - 隐藏行宏限制

VBA - Hide rows macro limit

我有下面的代码来隐藏我 sheet 上的所有空白单元格。如何将隐藏范围设置为 100,以便在单元格 100 之后如果其余单元格为空白,则不会隐藏它们。如果空白,则仅隐藏 1-100 限制内的单元格。

Sub HideRow()

    Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Projects Dashboard")
    Dim LRowC, LRowD, LRowF, LRowH, LRow As Long
    LRowC = ws.Range("C" & ws.Rows.Count).End(xlUp).Row
    LRowD = ws.Range("D" & ws.Rows.Count).End(xlUp).Row
    LRowF = ws.Range("F" & ws.Rows.Count).End(xlUp).Row
    LRowH = ws.Range("H" & ws.Rows.Count).End(xlUp).Row
    LRow = Application.WorksheetFunction.Max(LRowC, LRowD, LRowF, LRowH)

    Dim I As Long

    Application.ScreenUpdating = False
    ws.Rows.Hidden = False
    For I = LRow To 7 Step -1
        If ws.Range("C" & I).Text = "" And ws.Range("D" & I).Text = "" And ws.Range("F" & I).Text = "" And ws.Range("I" & I).Text = "" Then
            ws.Rows(I).EntireRow.Hidden = True
        End If
    Next I
    Application.ScreenUpdating = True

End Sub

如果我理解您的问题和代码,您似乎希望将 LRow 值限制为最大值 100。

添加一行代码应该很简单:

...    
LRow = Application.WorksheetFunction.Max(LRowC, LRowD, LRowF, LRowH)

If LRow > 100 Then LRow = 100

Dim I As Long
...