Macro do Word - número de fatura de incremento automático e nome de arquivo ao salvar

2

Estamos desenvolvendo um modelo de fatura para o Word, que contém um número de fatura em um campo na parte superior da página.

Gostaríamos que o número da fatura fosse incrementado automaticamente (a partir do último número da fatura) e gostaríamos que o nome do arquivo fosse baseado no número da fatura.

Todos eles serão salvos no mesmo diretório.

    
por Steve 24.01.2012 / 02:01

2 respostas

0

Eu encontrei este que, acredito, resolverá o problema:

Use an Autonew macro to add a sequential number to a document and save it with that number.

In the template from which you create the document, insert a bookmark named Order in the location where you want the sequential number to appear and create an AutoNew macro in the template, as follows:

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

If you don't need to display the number in the document, but just want to save it with a sequential number, there is no need to create the bookmark in the template and you should then delete the second last line of the code.

    
por 27.01.2012 / 06:15
0
 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
    
por 26.05.2017 / 03:35