MS Word Document Versions??

I’d like to make use of Microsoft Word’s document version recording. This seems like a handy way of storing a version history and being able to refer back to it. However, although you get a nice dialog window to store all the version infomation on the document, I also want this information to appear on the document itself, so that the printed hardcopy also shows it. It’s no good to me if it remains as hidden records only visible on computer.

Do any doper MS Word Experts know how I can do this? Or even point me in the right direction? I thought it would be within the Word Fields, but the options there totally lack anything about versions.

I’ve googled all over for help on this. I’ve even, spare me, looked in the Microsoft Knowledge base. But can’t find anything.

Thanks.

How good are you with VBA?

You can access the version info as part of the VBA Application object (Application.ActiveDocument.Versions)

That’s exactly the answer I wasn’t looking for. :frowning: I’ll have a look if there’s anything on the web using your suggestion that I can lift without having to figure too much out myself.

It seems anytime you want to do anything tricky in Word the answer involves Visual Basic. I don’t know VBA and not overly keen on learning it just to get things done in Word. (Actually, I regard VB as evil personified, but that’s a different thread…)

It does seem inexplicable that Word would record information that is impossible (or very awkward) to get onto the hardcopy. It’s a Word Processor! Hardcopy is its raison d’etre!

Thanks for the suggestion.

Heh, well its various incarnations have given me a living (sometimes even a decent one) for the best part of the last 10 years, so I’m not quite so down on it, but as you say, different thread.
I always find Word VBA a bit of a weird concept though - like sellotaping an electric motor to a piece of paper.

Well yes, they seem to have forgotten that about this particular feature.

If you do need to go the VBA route, I’ll post a wee VBA routine below that might help get you started.

Public Property Get VersionInfo() As String
Dim lVersion As Long
Dim WordApp As New Word.Document
Dim sInfo As String

Set WordApp = Application.ActiveDocument

With WordApp.Versions
For lVersion = 1 To .Count
sInfo = sInfo & .Item(lVersion).Comment & ", " & .Item(lVersion).Date & vbCrLf
Next lVersion
End With

Set WordApp = Nothing

VersionInfo = sInfo
End Property

Dang message board won’t accept indentation. Oh well.

That’s what the {code} tag is for :slight_smile:


Public Property Get VersionInfo() As String
  Dim lVersion As Long
  Dim WordApp As New Word.Document
  Dim sInfo As String

  Set WordApp = Application.ActiveDocument

  With WordApp.Versions
    For lVersion = 1 To .Count
      sInfo = sInfo & .Item(lVersion).Comment & ", " & .Item(lVersion).Date & vbCrLf
    Next lVersion
  End With

  Set WordApp = Nothing

  VersionInfo = sInfo
End Property


The what tag? Oh I see blush

Thanks Usram. You live and learn. Then you die and forget it all. :smiley:

Thanks jinty. First chance I get I’ll give this a try.

Thirteen Ways To Loath VB