Re: mail merge code template with connection strings
- From: "Doug Robbins - Word MVP on news.microsoft.com" <dkr@xxxxxxxxxxxxxxxxxx>
- Date: Tue, 24 Feb 2009 09:33:11 +1000
If you manually attach the data source, you could then use the following
code to get the details of the connection
'Get the details of the datasource
With ActiveDocument.MailMerge.DataSource
MsgBox .Name
MsgBox .QueryString
End With
There's a few other things that you need to supply to execute the merge to
email - the MailAddressFieldName as a minimum.
With ActiveDocument.MailMerge
.Destination = wdSendToEmail
.MailAddressFieldName = "emailfield"
.MailAsAttachment = True 'or False
.MailFormat = wdMailFormatHTML 'or wdMailFormatPlainText
.MailSubject = "some string"
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute pause:=False
End With
Plus, you may have to deal with Outlook Security issues for which you can
check out ExpressClickYes (via Google)
--
Hope this helps.
Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.
Doug Robbins - Word MVP, originally posted via msnews.microsoft.com
"Diane" <Diane@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:AAB31E5B-3CC4-4470-B8D7-62F2324F44A8@xxxxxxxxxxxxxxxx
Group,
I am wanting to create a macro that will connect to a file in code and
perform a mail merge to outlook, the file I connect to will always be the
same file.
I am currently connecting with an ODBC connection, I want to change
this....I don't want to be running around installing this on many pc's.
If I
can create an ado connection in code, I can eliminate this problem.
Also,
my current macro displays the mail merge dialogue box, I don't want that
either, my goal is to connect to my file, complete a mail merge, all
within
code, without user intervention.
I can connect to my database, but I can't seem to get the document to
merge
with it??
Dim cnn As New ADODB.Connection
Dim rst As New ADODB.Recordset
Dim strsql As String
Set rst = New ADODB.Recordset
Const cnnstring = "Provider=IBMDA400; Data Source=iSeries"
strsql = "select * from mylib.myfile"
--->(this doesn't work for me)--->ActiveDocument.mailmerge.OpenDataSource
name:=cnnstring
--->this is step #2 that I want to work----->
With ActiveDocument.mailmerge
.Destination = wdSendToEmail
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute pause:=False
End With
rst.Close
cnn.Close
Set rst = Nothing
Set cnn = Nothing
Any examples of creating this in code would be appreciated!!
.
- Follow-Ups:
- References:
- mail merge code template with connection strings
- From: Diane
- mail merge code template with connection strings
- Prev by Date: Re: mail merge code template with connection strings
- Next by Date: Re: Not able to save .DOC as data source for mail merge
- Previous by thread: Re: mail merge code template with connection strings
- Next by thread: Re: mail merge code template with connection strings
- Index(es):
Relevant Pages
|
Loading