第1个回答 2010-03-19
按Alt+F11,左边选 ThisWorkbook ,在右边窗口粘上下面的代码,
把你的“单据编号:RY-20100000”单元格位置放在代码:
Set a = Sheets("Sheet2").[A1]
在打印前就会询问是否更新单据编号,回答"是"会更新编号,然后打开打印对话框。回答"否"不会更新编号,可还会打开打印对话框。回答"取消"会取消打印。
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Set a = Sheets("Sheet2").[A1]
confirm = MsgBox("自动更新单据编号?", vbYesNoCancel)
If confirm = 2 Then Cancel = True: Exit Sub
If confirm = 6 Then
a.Value = "单据编号:RY-201" & WorksheetFunction.Text(Right(a.Value, 5) + 1, "00000")
End If
End Sub
第3个回答 2010-03-19
for i = 1 to x 'x等于打印的单据的份数
n=right(RY-20100000,len(RY-20100000)-3) '这里取得单据编号的数字部分
n = n+1 '每循环一次就+1
NO="RY-" & n 'NO就是单据编号
next
当然了这个只是单据编号,应该还要写入打印之类的代码才能打印