【发布时间】:2016-12-03 10:38:55
【问题描述】:
我会先明确我的目标,然后再详细解释。
我的目标是检查一个范围内的非空白值,但只在该范围的隐藏单元格中,然后在不同的单元格中使用条件格式,取决于范围内的单元格是否为空。
我有一个名为 Location_Address_RangeCheck 的命名范围,它直接覆盖位置编号右侧的单元格,就像这样(位置编号不是范围的一部分)。 当位置数量发生变化时,超出该数量(最多 25 个)的行会自动隐藏在 worksheet_change 上,以减少混乱并减少滚动以查看其下方的内容。该代码运行良好,因此我不会在此处发布它,以免将任何人与我要完成的工作混淆。
我想提供一种保护措施,以确保隐藏行中没有可能影响输出的值(即,如果有人选择“3”作为“位置数”,但单元格中的数据可能位于第 8 个位置的行)。
我的目标是检查范围内的非空白值,但仅在隐藏单元格中,然后在所选位置数量旁边的单元格中使用条件格式,具体取决于是否范围内的单元格是否为空。
所以如果隐藏单元格中有 数据,那么它会导致工作表看起来像这样 .
到目前为止,我已经尝试了很多不同的东西,但我没有取得任何进展。我在互联网上搜索试图找到解决方案,但我发现的一切都是关于在可见细胞中寻找东西,这与我想要实现的目标相反。
这是我到目前为止编写的代码,我知道这并没有达到我的目标:
Sub testhiddencells()
Dim myRange As Range
Set myRange = Range("Location_Address_RangeCheck")
NumRows = Application.WorksheetFunction.CountA(myRange)
If Range("Location_Address_RangeCheck").Hidden = True Then
If Application.WorksheetFunction.CountA(Range("Location_Address_RangeCheck")) <> 0 Then
MsgBox "There's something there"
End If
End If
End Sub
【问题讨论】:
-
哪一部分给您带来了麻烦?
.Hidden?你看过here吗? -
我只是不知道如何构造它以仅搜索该范围内的隐藏单元格,然后触发位置数量右侧单元格中的条件格式。甚至只识别隐藏的单元格。我做错了什么,我只是不知道如何前进。这是我到目前为止所拥有的,我知道这是行不通的。我试图让它甚至只识别隐藏的单元格。但我睡眠不足,不知道该怎么办。
-
Sub testhiddencells() Dim myRange As Range Set myRange = Range("Location_Address_RangeCheck") NumRows = Application.WorksheetFunction.CountA(myRange) If Range("Location_Address_RangeCheck").Hidden = True Then If Application. WorksheetFunction.CountA(Range("Location_Address_RangeCheck")) 0 Then MsgBox "There's something there" End If End If End Sub