乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 怎样在<em>EXCEL</em>单元格中,自动生成<em>单据编号</em&

怎样在<em>EXCEL</em>单元格中,自动生成<em>单据编号</em&

作者:乔山办公网日期:

返回目录:excel表格制作


'注意:以下zd代码必须放在“ThisWorkbook”的代码窗口中

Private Sub Workbook_BeforePrint(Cancel As Boolean)
confirm = MsgBox("自动更新单据编号?", vbYesNoCancel)
If confirm = 2 Then Cancel = True: Exit Sub
If confirm= 6 Then
With Sheets("Sheet1").Range("G2")
.Value = Format(Date, "暂定Ayyyymmdd") & Format(Val(Right(.Value, 5)) + 1, "00000")
End With
End If
End Sub

'注意:以下zd代码必须放在“ThisWorkbook”的代码窗口中

Private Sub Workbook_BeforePrint(Cancel As Boolean)
confirm = MsgBox("自动更新单据编号?", vbYesNoCancel)
If confirm = 2 Then Cancel = True: Exit Sub
If confirm= 6 Then
With Sheets("Sheet1").Range("G2")
.Value = Format(Date, "暂定Ayyyymmdd") & Format(Val(Right(.Value, 5)) + 1, "00000")
End With
End If
End Sub
你完全没有必要每次生成一个文件,将每次的数据保存在一个单独sheet里面,每次运行这个表格,就去找最大的编号再加1就是本次的编号 。这样同时也就没有你的第二个问题和第三个问题,直接查看历史记录即可。

按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

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网