利用 VBA 实现 Excel 电子表格(工资报表)自动分页统计作者:王志华摘要:利用 VBA 编程,在 Excel 中启用宏命令,实现工资报表自动分页统计,方便工资统计和查找报表错误,减少统计误差,提高工作效率。关键词:VBA Excel 工资报表 分页统计一、问题的提出:随着 Excel 制作的电子报表越来越多,应用越来越广泛,常常遇到对其项目进行分页统计的问题,尤其是在工资报表系统中,在手动对工资项目进行分页统计时,假如出现人员增加、减少或人员调动产生的变换位置的情况,就得对动辄几十、上百页的报表重新对每页手动设置公式进行分页合计,再最后汇总,给报表的制作带来极大不便,增加了很大的工作量,降低了工作效率.假如利用 Microsoft Visual Basic Project 即 VBA 编辑宏命令,对报表进行自动分页、每页自动合计和最后总合计,将大大地减少工作强度,提高统计工作的效率和准确性.二、问题的解决(功能的实现):1、打开 Excel 电子表格应用软件。2、点击 Excel 窗口菜单,从下拉菜单中点击取消隐藏菜单项,弹出对话框如图:3、然后点击确定,Excel 自动切换到 Microsoft Excel – PERSONAL编辑中,如图所示:4、点击 Excel 菜单栏里的工具菜单,点面下来菜单里的宏选项里的录制宏命令弹出录制新宏对话框,如图所示:5、点击保存在的下来箭头,选择个人宏工作簿,然后点击确认,开始录制事先编辑好的自动分页汇总和删除分页统计的宏。6、按 Alt+F8 键,弹出启动宏命令对话框,如图所示:7、点击新建宏命令对话框中的编辑按钮,弹出如下对话框:8、在模块中输入或编辑、调试事先编辑好的宏命令,如图所示:9、具体自动分页汇总和、删除分页汇总宏命令如下: Dim i, h, hh, t, l, x, rr, dr, tt, ls, cs, lleft, lright As Integer Dim rrr As String Dim rCurrentCell As Range ' 每一页之分页小计所在单元格 Dim r1stSubCell As Range ’ 小计区域第一个单元格 Public Sub 自动分页汇总() Cells(1, 1)。Select On Error Resume Next t = 2Do i = InputBox("默认为 10,不能超过一页的范围!!! ”, "请输入每页拟打印的行数", 10)If i 〈= 0 Or i = ”" Then MsgBox ("每页行数必须大于 1!”)Else Exit DoEnd IfLoop i = Int(i) h = InputBox("起始行数,默认为 5 ", "请输入起始行数”, 5) x = i + h lleft = InputBox...