决定单元格是否可见的公式

我可以使用公式来确定单元格是否不在隐藏的行/列中?

我知道有小计和汇总等相关的公式,但我不太了解这些。 而小计似乎只关心过滤行,而不关心隐藏行。

我正在寻找像这样的东西:

=ISVISIBLE(A1) 

是否可以结合到达该function的公式?

这没有内置的公式。 但是,您可以使用VBA /编写自己的function来实现这一点。

 Function isvisible(cellname As String) isvisible = Not (Worksheets("Sheet1").Range(cellname).EntireColumn.Hidden Or Worksheets("Sheet1").Range(cellname).EntireRow.Hidden) End Function 

然后你可以在单元格中input=isvisible("A1")来获得结果。

如果你不喜欢双引号,这是另一种方式:

 Function isvisible(rng As Range) isvisible = Not (rng.EntireColumn.Hidden Or rng.EntireRow.Hidden) End Function 

然后你可以在单元格中键入=isvisible(A1)来获得结果。

如果通过小计()你引用这个选项:

 = IF( SUBTOTAL(103,A2)=1, "VISIBLE", "HIDDEN (or blank)" ) 

从这个post …那就是你的答案。 不能在表格之外使用它意味着你的数据应该被存储在一个表中,而不是那个公式的重要限制。

我会说 – 为您的数据创build表。 使用表总是值得的,不pipe你是否使用VBA。 我还没有遇到一个工作簿,它不会更好地使用表格而不是原始的范围。 即使它是一个小文件,它也会变得更快。