gpt4 book ai didi

excel - 使用 For 循环覆盖范围隐藏行

转载 作者:行者123 更新时间:2023-12-04 22:13:30 24 4
gpt4 key购买 nike

我有一些如下所示的数据(新用户无法直接嵌入):
DataExample 1
我的目标是隐藏所有月份列中显示“#Missing”或 0 的任何行。所以从附图中,前三行永远不会被隐藏,但截至目前,第四行将被隐藏,因为只有“#Missing”和 0 个值。
我仔细阅读了旧帖子并发现了一些类似的问题,但没有什么能完全解决我的利基问题(它似乎是利基)。这就是说,如果这已经在其他地方解决了,请原谅我,我只是找不到它。
这是我的出发点,可能非常离谱。我觉得这应该是一个相对简单的解决方案,但不完全确定:

Sub RowHider()

Dim c As Range

For Each c In Range("I12:T10000")
If c.Value = "#Missing" Or 0 Then
c.EntireRow.Hidden = True
End If
Exit For
Next c

End Sub

最佳答案

也许像这样,使用 WorksheetFunction.CountIfs :

Sub RowHider()

Dim c As Range
Dim rngToHide As Range

For Each c in Range("I12:T10000").Rows
If WorksheetFunction.CountIfs(c,"<>0",c,"<>#Missing") = 0 Then
If rngToHide Is Nothing Then
Set rngToHide = c
Else
Set rngToHide = Union(rngToHide, c)
End If
End If
Next

If Not rngToHide Is Nothing Then
rngToHide.EntireRow.Hidden = True
End If
请注意,这不会隐藏完全空白的行,但可以根据需要进行调整。

关于excel - 使用 For 循环覆盖范围隐藏行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71503819/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com