【发布时间】:2018-07-05 17:04:53
【问题描述】:
我有下面的代码来隐藏工作表上的所有空白单元格。如何将隐藏范围设置为 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
【问题讨论】:
-
LRowH基于H列,但是当您检查内容是否为空时,您会检查I列中的值。这是想要的吗? -
@cybernetic.nomad,
column I?,请重新检查代码。 -
来自您的代码:
And ws.Range("I" & I).Text,请再次查看代码。 -
抱歉,错过了最后一个范围。
-
请澄清您的问题,您是要在前 100 个空单元格还是 100 行之后停止?
标签: vba excel excel-formula excel-2010