我们正在开发 Word 的发票模板,其中包含页面顶部字段中的发票号码。
我们希望发票号码自动增加(从最后一个发票号码开始),并且我们希望文件名基于发票号码。
它们都将保存在同一个目录中。
答案1
我发现这我认为这可以解决问题:
使用 Autonew 宏向文档添加序列号并使用该号码保存。
在创建文档的模板中,在希望出现序列号的位置插入一个名为 Order 的书签,并在模板中创建一个 AutoNew 宏,如下所示:
Sub AutoNew() Order = System.PrivateProfileString("C:\Settings.Txt", _ "MacroSettings", "Order") If Order = "" Then Order = 1 Else Order = Order + 1 End If System.PrivateProfileString("C:\Settings.txt", "MacroSettings", _ "Order") = Order ActiveDocument.Bookmarks("Order").Range.InsertBefore Format(Order, "00#") ActiveDocument.SaveAs FileName:="path" & Format(Order, "00#") End Sub
如果您不需要在文档中显示数字,而只是想以序列号保存它,则无需在模板中创建书签,然后应删除代码的倒数第二行。
答案2
Sub GoGenInv()
Selection.GoTo What:=wdGoToBookmark, Name:="BkMrk_InvNum"
Selection.MoveRight Unit:=wdCharacter, Count:=10, Extend:=wdExtend
Dim nInvNum As Variant
nInvNum = Val(Selection.Text)
nInvNum = nInvNum + 1
Selection.Text = nInvNum
Selection.GoTo What:=wdGoToBookmark, Name:="BkMrk_InvNum"
End Sub