Creating Word Doc using VBA

  • Thread starter Thread starter Noma-Gcina
  • Start date Start date
N

Noma-Gcina

Good morning, I hope someone can help - I want to type up
a word document in VBA and use variables to fill in some
of the blanks. I have done this before about 2 years ago
and have completely forgotten how to do it. Any
suggestions or sample code or a URL to somewhere that
will help will be appreciated.
Thanks
Noma-Gcina
 
There are a couple of ways to go about this. My preference is to use OLE
automation to control Word and fill bookmarks in a template (.DOT file).
Some code that you can play with to familiarize yourself with the concepts
is found below.

First, create a Word template for your form letter. For this example, the
document name is C:\FormLetter.dot. In this template, you'll use the Insert
\ Bookmark command to create a bookmark at each location in the text where
you'll want to insert Access data. For this example, I'm using simple Name
and Address fields as found on an Access Form.

In Access, open any Module in design view. Then select Tools|References and
make sure that you have a reference to the appropriate Word library. Look
for "Microsoft Word xx.x Object Library, where xx.x is the Word version
number. For this example, you will also need a reference to DAO.

' Behind a command button on a form, insert the following code.

BEGIN CODE SAMPLE:

Dim objWord As Object

' Open Microsoft Word using automation
Set objWord = New Word.Application

objWord.Documents.Add "c:\FormLetter.dot"
objWord.Visible = True

' The following code is generated from your Access form while it is
' manipulating an instance of Word.
' So, while it looks somewhat like VBA, it's really Word VBA.

If objWord.ActiveDocument.Bookmarks.Exists("FirstName") = True Then
objWord.ActiveDocument.Bookmarks("FirstName").Range.Text = me!FirstName
End If

If objWord.ActiveDocument.Bookmarks.Exists("LastName") = True Then
objWord.ActiveDocument.Bookmarks("LastName").Range.Text = me!LastName
End If

' ... continue reading data from form and inserting into bookmark

END CODE SAMPLE
 
Thank you very much Cheryl! It works. I had done it a
different way before but this is even better!

Noma-Gcina :)
 
Back
Top