因此,我正在运行一个过滤我的数据的代码,然后对数据进行计数并将其插入到excel文件中。我正在使用以下代码对数据进行计数:
lastrow = Cells(Rows.count, "A").End(xlUp).Row
count = Application.WorksheetFunction.Subtotal(3, Range("A2:A" & lastrow))
出于某种原因,当我过滤数据时,除了位于第一行的第一行之外,没有可见的值,它给我的值为1而不是0。为什么这样做的任何想法?
谢谢
答案 0 :(得分:2)
这也是我前一段时间也发现的一件有趣的事情。发生的情况是,A列为空白(或只是过滤为出现出现空白)lastrow = 1
,这意味着您要汇总的范围为Range("A2:A1")
。
例如,测试:
Debug.Print Application.WorksheetFunction.Subtotal(3, Range("A2:A1"))