如何让EXCEL在打印文档时自动增加单元格里的数字?

比如我A1单元格的数字是1,打印之后如何让它自动变成2?后面接着变成3........50?附件我不会上传,请高手帮我一下,谢谢了!

这个只能通过VBA来实现,在workbook的BeforePrint事件中来响应
右键任意一个工作表标签——查看代码,然后左边工程资源管理器中选择对应工作簿的thisworkbook对象,在右边代码窗口中输入:
'(”工作表名"可根据需要修改,CELLS(1,1)为在工作表的A1单元格显示,可根据需要修改)
Private Sub Workbook_BeforePrint(Cancel As Boolean)
worksheets("工作表名").Cells(1, 1).Value = worksheets("工作表名").Cells(1, 1).Value + 1
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-04
打印之后不会变,可以设置多个sheet表,打印不同的表追问

不是这样的啊,你说的和我的实际情况不一样啊,我的一般都是打几千张,而且中间的内容有时要修改的,像你说的那样的话,我非得累死不可

追答

EXCEL好像实现不成功,需要使用系统实现,几千张你还手动干活啊,上一个管理系统吧

第2个回答  2012-12-06
录制一个宏,类似如下
Sub Macro1()
Application.ActivePrinter = "Adobe PDF 在 Ne01:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"Adobe PDF 在 Ne01:", Collate:=True
End Sub
-----------------------
Adobe PDF 在Ne01: 是打印机名会有所不同
然后在 End Sub 之前加一句

[A1]=[A1]+1


-------------------
Sub Macro1()
Application.ActivePrinter = "Adobe PDF 在 Ne01:" ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _ "Adobe PDF 在 Ne01:", Collate:=True End Sub
[A1]=[A1]+1
End Sub
然后运行宏就会打印一次,然后单元格的值就会+1追问

有没有办法让它每打印2张再增加1啊?现在这个每打印1张,数值就增加1个了,附图如下

追答

将上面的
Copies=1的值 改为=2
A1改成F18

第3个回答  2012-12-06
做一个宏,代码如下:
Sub 按钮1_单击()
Range("A1").Select '[A1]是要变单元格位置
ActiveCell.FormulaR1C1 = [A1] + 1 '1是看你要加多少,[A1]是单元格位置
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True '1是打印1份
End Sub追问

有没有让他每打印2张再增加1啊?你这个我试了下,虽然是连续打印两张的,但后面就不能接着增加了啊,要是你这个能和二楼的接合起来就好了,这样就能直接输入需要的张数,而且他都是每个数字打印两张,后面打印都是加1,要是这样的就好了

相似回答