100分求助,在EXCEL的页脚中加入汇总

raxy 2003-11-10 01:01:49
我用EXCEL做了一个表,总共10页,其中列“F”每页都需统计一个汇总数,在最后一页还需再加入一个总合计数。我现在是用分页符逐页分开,再逐页插入一行真入合计数,但当有增删时,就得全部数据重新分页,很麻烦。想到应该可以利用VBA在页脚中加入每一页的汇总数,但一直都研究不出该如何使用,请各位高手指教一下,谢谢!
...全文
247 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Winak 2003-11-12
  • 打赏
  • 举报
回复
代码中本来就有一段用于删除分页,如果你新插入行,肯定要先删除原来的分页,然后重新分页的

代码应该是没有问题的,我在自己的机器上做过无数次了,或者你在
Public Sub…… 这段代码下面加上一句
On Error Resume Next
raxy 2003-11-12
  • 打赏
  • 举报
回复
先谢谢你的代码!

将以上代码贴过去我的文件试用了一下,执行宏时发生错误,提示“运行时错误'1004';不能设置类Range的”Locked属性”,没有统计出“每页小计”的结果,而且当我插入几行再试时,分页就乱了。可不可加多几行代码,先将原有的分页删掉,再重新分页汇总。
raxy 2003-11-12
  • 打赏
  • 举报
回复
行了,谢谢啦!
ziken 2003-11-11
  • 打赏
  • 举报
回复
up
Winak 2003-11-11
  • 打赏
  • 举报
回复
用VBA吧,在Excel中按下ALT+F11,把下面的代码贴到一个新的模块中。可惜这里不能上传附件,不然就直接贴Excel了

Dim i, t, l, x, rr, dr, tt As Integer
Dim rrr As String
Public Sub Fyhz()
t = 2
Do
i = InputBox("请输入每页拟打印的行数: (不能超过一页的范围!!!)")

If i <= 0 Or i = "" Then
MsgBox ("每页行数必须大于1!")
Else
Exit Do
End If
Loop
i = Int(i)
x = i + 1
l = Range("A65536").End(xlUp).Row
Do While l >= x

Rows(x + 1).Insert Shift:=xlDown
Cells(x + 1, 1) = "本页小计"
Cells(x + 1, 2).Formula = "=SUM(R[-" + CStr(i) + "]C:R[-1]C)"
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Rows(x + 2)
x = (i + 1) * t
t = t + 1
l = l + 1
Loop

If l Mod (i + 1) <> 1 Then
rr = l Mod (i + 1)
rr = rr - 1
rrr = CStr(rr)
Cells(l + 1, 1) = "本页小计"
Cells(l + 1, 2).FormulaR1C1 = "=SUM(R[-" + rrr + "]C:R[-1]C)"
End If
Cells(l + 2, 1) = "合计"
Cells(l + 2, 2).FormulaR1C1 = "=SUM(R[-" + CStr(l + 1) + "]C:R[-1]C)/2"
Range(Cells(1, 1), Cells(l + 1, 2)).Locked = True
ActiveSheet.Protect
Cells(1, 1).Select
End Sub



Public Sub 删除分页汇总()

ActiveSheet.Unprotect
Cells.Locked = False
ActiveSheet.ResetAllPageBreaks
Rows(l + 2).Delete Shift:=xlUp
If l Mod (i + 1) = 1 Then
For dr = l To i + 1 Step -(i + 1)
Rows(dr).Delete Shift:=xlUp
Next dr
Else
Rows(l + 1).Delete Shift:=xlUp
t = t - 2
For tt = t To 1 Step -1
Rows((i + 1) * tt + 1).Delete Shift:=xlUp
Next tt
End If
Cells(1, 1).Select
End Sub
klbt 2003-11-11
  • 打赏
  • 举报
回复
不清楚,帮你顶上去。

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧