View Single Post
  #1   Report Post  
Posted to microsoft.public.word.pagelayout
SteveH SteveH is offline
external usenet poster
 
Posts: 19
Default Address block problem in mail merge labels

I'm using Word 2003. I am editing a mail merge document designed to print
labels from a database table. It was created by someone other than me. It is
opened with VBA code from a map editing app. I want to print the name
followed by a local township name by putting the township in the Company line
as such:

John Doe
Township name
Address

Currently, when I go to edit the address block and click the "Match fields"
button, the Courtesy Title is matched to the Township name field in the
table. However it is printing the Courtesy title first and appending the
name so it prints like this:

Township name John
Doe
address


I tried matching the field to the Company Name. It previews correctly but
when I same the document and open it with the mapping app, the address block
field matches I put in are changed back to the original settings. It is as
if something in the parameters within the code change the settings. I tried
doing a "Save As", changed the doc name (in the code as well) with the same
results.

Here's the code:

Dim MSWord As Word.Application


Set MSWord = New Word.Application
Dim WordDoc As Word.Document

'Set WordDoc =
MSWord.Documents.Open("J:\GIS_Developments\BnZ\Lab els.doc")
Set WordDoc = MSWord.Documents.Open("X:\Steve\GIS\BnZ\Copy of
Labels2.doc")



MSWord.ActiveDocument.MailMerge.OpenDataSource
Name:="X:\Steve\GIS\BnZ\Labels.dbf", _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="",
PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="",
Revert:=False, _
Format:=wdOpenFormatAuto, Connection:= _
"Provider=Microsoft.Jet.OLEDB.4.0;Password="""";Us er
ID=Admin;Data Source=X:\Temp;Mode=Read;Extended Properties="""";Jet
OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDBatabase
Password="""";Jet OLEDB:Engine Type=18;Jet OLEDBatabase Locking Mode" _
, SQLStatement:="SELECT * FROM `Labels`", SQLStatement1:="",
SubType _
:=wdMergeSubTypeAccess



MSWord.ActiveDocument.MailMerge.Execute False

MSWord.Selection.WholeStory
MSWord.Selection.Font.size = 10
MSWord.Selection.MoveRight Unit:=wdCharacter, Count:=1

MSWord.Documents(2).Close

MSWord.Visible = True


Help!
--
Steve