
Tenho um documento do Word que outros usuários podem acessar e alterar (no mesmo computador).
No topo desse documento há uma linha que diz “Versão # XXX”.
O que eu gostaria é poder rodar uma macro que aumentasse XXX em 1 e salvar o documento.
Isso é possível? Como?
Responder1
Você poderia criar uma propriedade de documento chamada (digamos) Revisão. Você poderá então exibi-lo em um campo e seu código poderá ler e gravar nele por meio de:
myDocument.CustomDocumentProperties("Revision").Value
Responder2
Caso alguém esteja interessado, aqui está a resposta que encontrei.
1/ Insira um campo (CTRL+F9) como "{ DOCVARIABLE VNUM }"
2/ Crie uma macro com o seguinte código:
Sub IncrementVersion()
On Error Resume Next
With ActiveDocument
.Variables.Add ("VNUM")
On Error GoTo 0
If IsNumeric(.Variables("VNUM")) = False Then
.Variables("VNUM") = 1
Else
If .Saved = False Then
.Variables("VNUM") = .Variables("VNUM") + 1
Else
If MsgBox("No changes", vbOKCancel) = vbCancel Then
Exit Sub
Else
'nothing
End If
End If
End If
.Fields.Update
.Save
.Close
End With
End Sub
Funciona bem para o que eu procurava.