如何统计一个EXCEL工作薄内多张工作表的行数

有一个EXCEL工作薄,工作薄内有N张工作表(N>100),每张工作表的格式均为第一行为标题,从第二行开始为数据,现在需要统计出该EXCEL工作薄内共有多少行数据(不含标题行),请问有什么办法能较快的得到结果吗?EXCEL的版本是2007版的。

详细步骤如下:

1.模型:工作簿内有若干个工作表,将每个表的最大行数提取到最后一个表中

2.Alt+F11,在最后一个工作表中,输入如下代码

Sub main()

Cells(1, 1) = "工作表"

Cells(1, 2) = "最大行数"

For i = 1 To 3

Cells(i + 1, "A") = Sheets(i).Name

Cells(i + 1, "B") = Sheets(i).Range("A65536").End(3).Row

Next i

End Sub

3.按F5,执行代码,关闭,返回Excel最后一个工作表,即得到如下结果:

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-03
新建一个工作表放到工作簿的最后(避免公式重复引用),在你的工作表中的任意一个单元格填入公式=counta(sheet1:sheetN!A:A)-N即可
其中sheet1是你工作簿中第一个表的名称,sheetN是你工作簿中最后一个表的名称,N是你的总表数。
例如你的工作簿中原来共有100张表,工作表的名称依次是:客户、供应商……、联系人;那么公式为=counta(客户:联系人!A:A)-100。
此外,需要注意的是,该统计方法对于存在空白项或合并单元格时可能得不到你想要的结果,因为空白项会被忽略,合并单元格会被认为只有1行,因此,选择A列进行统计还是其他列,请根据需要替换。本回答被提问者和网友采纳
第2个回答  2010-06-29
假设你报表最多的是1000行,那就
选中第一张表的B1001然后点对sheet1这个地方点右键,点选中全部工作表,写公式
=count(A:A)
再选中B1002单元格写
=SUM(Sheet1:Sheet100!B1001)
如果你的sheet1表单名是表格A,那你也写表格A,最右边(也就是最后一个表名)是表格Z,那就用它代替sheet100
相似回答