有个已做好的excel销售订单格式,需要在填写信息完成后保存自动生成一个单据编码,形式为201204000X 5
只要能实现此功能就ok,有点像勤哲excel一样能记录历史流水号,大概VBA就可以处理:如填写完其他信息后另存为另外excel时候生成一个单据码,或者有无其他更好的方式请...
只要能实现此功能就ok,有点像勤哲excel一样能记录历史流水号,大概VBA就可以处理:如填写完其他信息后另存为另外excel时候生成一个单据码,或者有无其他更好的方式请大家帮忙
展开
2个回答
展开全部
如果每次打开表格时此单据州竖码自己改变,可以不用VBA,只用EXCEL公式就行了,比如在A1格中生成一个闷迹困包括日期的编码,可以在A1中输入公式=YEAR(NOW()) & RIGHT("00"&MONTH(NOW()),2) & RIGHT("00"&DAY(NOW()),2) & "001"
如果想每次打开表格后,此单据码是不能改变的,就要用VBA了,在VBA窗口中左侧找到Thisworkbook项目,输入蚂念下面代码:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Sheets("sheet2").Range("a1") = Year(Now()) & Right("00" & Month(Now()), 2) & Right("00" & Day(Now()), 2) & "001"
End Sub
如果想每次打开表格后,此单据码是不能改变的,就要用VBA了,在VBA窗口中左侧找到Thisworkbook项目,输入蚂念下面代码:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Sheets("sheet2").Range("a1") = Year(Now()) & Right("00" & Month(Now()), 2) & Right("00" & Day(Now()), 2) & "001"
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub setRndNum()
t = Timer
Randomize
Dim myArr
Range("a1") = 1
Range("a1").DataSeries 2, , , 1, 10000
myArr = Range("a1:a10000")
For i = 1 To 10000
a = Int(Rnd() * 10000) + 1
temp = myArr(i, 1)
myArr(i, 1) = myArr(a, 1)
myArr(a, 1) = temp
Next
Range("a1:a10000") = myArr
[c1] = Timer - t
End Sub
这段代祥腊码是扮茄从别处抄来的,不明白可以去搜如厅宴察何生成随机数
t = Timer
Randomize
Dim myArr
Range("a1") = 1
Range("a1").DataSeries 2, , , 1, 10000
myArr = Range("a1:a10000")
For i = 1 To 10000
a = Int(Rnd() * 10000) + 1
temp = myArr(i, 1)
myArr(i, 1) = myArr(a, 1)
myArr(a, 1) = temp
Next
Range("a1:a10000") = myArr
[c1] = Timer - t
End Sub
这段代祥腊码是扮茄从别处抄来的,不明白可以去搜如厅宴察何生成随机数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询