发布日期:2022-03-24 06:55 点击次数:107
在打印一些单据或票据时,希望它们的右上角序号能自动增加,每打印一份就自动加1,比如要打印的票据的当前序号是“№ 2010110001”,打印此票据后,下一张的序号自动变成“№ 2010110002”。 这个序号由两部份组成,前面是一个字符“№”,后面是一个空格加一串10个数字,序号的总长度是12位,见下图中的 I2 单元格。要实现序号自动递增这样的功能,需要用VBA代码来解决。
操作步骤第一步:调出VBA窗口在当前打印票据工作表中按ALT+F11,此时会打开VBA窗口,按工具栏上的“插入-模块”,插入一个用户“模块”,然后把下面代码复制进去:
第二步:输入代码Sub 打印()s = Range("i2") '收据上的当前序号在I2单元格ActiveWindow.SelectedSheets.PrintOut '调用打印命令打印当前页Range("i2") = Left(s, 2) Right(s, 10) + 1 '打印完毕后让序号加一End Sub代码不多,只有五行,其中第四行的 “Right(s, 10) + 1”的意思是从原序号中的右侧取出10位数字,再把这个数字加一。然后与“left(s,2)”组合成一个新的序号赋值给I2单元格。这个“left(s,2)”表示从原序号的左侧取出两个字符,即“№”与后面的一个空格。注意:在这个例子中,我们的票据序号在i2单元格。第三步:添加按钮上面这些完成后,就可以使用这个功能了,但为了方便使用代码,还要在收据的旁边添加一个按钮,每次按动这个按钮,就会调用上面的代码,完成打印并使序号加1。在EXCEL窗口按“视图-工具栏-窗体”,调出“窗体”工具栏,用鼠标选择其中的“按钮”,并在屏幕的适当位置添加一个“按钮”。添加后会弹出一个“指定宏”的对话框,选择对话框中的“打印”宏(就是我们的VBA代码的名字),然后按确定。在添加后的“按钮”上点鼠标右键,选“编辑文字”,给这个按钮起一个名字“打印”。
现在就可以使用了,按一下“打印”按钮,就会打印出当前页面,并自动将序号加1。大家还可以在这个代码中添加其中功能,比如打印后自动清空“收据”的内容,以便输入新的内容。END注意事项 如果你制做的收据“序号”不在i2单元格,比如在K1单元格,就需要在代码的第二行与第四行中把“i2”替换成“K1”。
上一篇:你靠什么当老板
下一篇:理财资讯 使用APP创业的方法