Vba 获取未隐藏单元格的最大值
我有一个有20行的表,该表取消隐藏表上方单元格中指定的行数。因此,如果我在单元格中输入5,20行中的5行将被取消隐藏。 所以现在我想得到现在未隐藏的5个单元格的最大值。我该怎么做呢?也许吧Vba 获取未隐藏单元格的最大值,vba,excel,Vba,Excel,我有一个有20行的表,该表取消隐藏表上方单元格中指定的行数。因此,如果我在单元格中输入5,20行中的5行将被取消隐藏。 所以现在我想得到现在未隐藏的5个单元格的最大值。我该怎么做呢?也许吧 =SUBTOTAL(104,your_range) 104将为您提供未隐藏单元格的最大值。如果将104替换为4,则它将作为正常的最大值函数运行,除非您使用内置的Excel表格函数筛选行。SUBTOTAL始终忽略由于筛选(使用4或104)而不可见的行,因此它不是真正的“正常最大值函数”。有关SUBTOTAL状
=SUBTOTAL(104,your_range)
104将为您提供未隐藏单元格的最大值。如果将104替换为4,则它将作为正常的最大值函数运行,除非您使用内置的Excel表格函数筛选行。SUBTOTAL始终忽略由于筛选(使用4或104)而不可见的行,因此它不是真正的“正常最大值函数”。有关SUBTOTAL状态的Excel帮助文档“编号1到11”(包括隐藏值)或者101到111(忽略隐藏值),指定在计算列表中的小计时使用哪个函数。”我刚刚测试了它,4似乎在常规筛选表和手动隐藏行中充当正常的MAX函数。Houdini你让我在Excel中彻底震惊地测试了这一点。在这个上下文中,“隐藏值”指的是那些用Hide命令隐藏的行,所以104忽略用Hide隐藏的行,4不忽略……但它们都忽略了通过筛选隐藏的行,正如帮助中所述-即。“SUBTOTAL函数忽略任何未包含在筛选器结果中的行,无论使用哪个函数的值”Upvote my question看到你们对subject@barryhoudini我以1000比1进行测试(增量为100)。不隐藏任何内容,所有返回1000。当我右键单击行标题并选择“隐藏”时,结果将变为
Max()
和Subtotal(4,range)
=1000,而Subtotal(104,range)
返回900。如果我随后取消隐藏该行并使用过滤器过滤掉1000,Max()
将保持为1000,而Subtotal(4,range)
和小计(104,range)
返回900。因此,MAX()
返回最大隐藏/过滤/或不小计(4,range)
忽略过滤值,但不忽略隐藏值,小计(104,range)
返回最大可见值。与您的状态完全相同。
=SUBTOTAL(104,RANGE)