S
Stapes
Hi
I have a piece of code that sends an generates an email if an email
address exists: -
Dim objWord As Word.Application
' in order for this to work - go to Tools / References and tick
Microsoft Word 11.0 Object Library
Set objWord = CreateObject("Word.Application")
With objWord
' Make the application visible.
.Visible = True
' Open the document.
.Documents.Open ("C:\Documents and Settings\stephen\Desktop
\Glynn Barton\Confirmation.doc")
' Move to each bookmark and insert text from the form.
.ActiveDocument.Bookmarks("BkmrkRecipientsName").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[ContactFirstName]) & " " & ([Forms]![Process
Bookings]![Booking Form].Form.[ContactLastName])))
.ActiveDocument.Bookmarks("BkmrkRecipientsName2").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[ContactFirstName]) & " " & ([Forms]![Process
Bookings]![Booking Form].Form.[ContactLastName])))
.ActiveDocument.Bookmarks("BkmrkBillingAddress").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[BillingAddress])))
.ActiveDocument.Bookmarks("BkmrkCity").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[City])))
.ActiveDocument.Bookmarks("BkmrkStateOrProvince").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[StateOrProvince])))
.ActiveDocument.Bookmarks("BkmrkPostalCode").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[PostalCode])))
.ActiveDocument.Bookmarks("BkmrkCountryRegion").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[Country/Region])))
.ActiveDocument.Bookmarks("BkmrkTodaysDate").Select
.Selection.Text = Date
.ActiveDocument.Bookmarks("BkmrkNoOfWeeks").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[NoOfWeeks])))
.ActiveDocument.Bookmarks("BkmrkArrivalDate").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[DateOfArrival])))
.ActiveDocument.Bookmarks("BkmrkResourceName").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.Combo89.Column(1))))
' .ActiveDocument.Bookmarks("Photo").Select
' .Selection.Paste
End With
' Print the document in the foreground so Microsoft Word 97
' will not close until the document finishes printing.
If Not IsNull(([Forms]![Process Bookings]![Booking
Form].Form.Email)) And InStr(([Forms]![Process Bookings]![Booking
Form].Form.Email), "@") Then
Options.SendMailAttach = True
'objWord.ActiveDocument.SendMail Recipients:=([Forms]!
[Process Bookings]![Booking Form].Form.Email)
objWord.ActiveDocument.SendMail
Else
objWord.ActiveDocument.PrintOut Background:=False
End If
' Close the document without saving changes.
objWord.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
' Quit Microsoft Word 97 and release the object variable.
objWord.Quit
Set objWord = Nothing
Exit Sub
It generates an email OK, but does not put the enailk address in. The
line:
'objWord.ActiveDocument.SendMail Recipients:=([Forms]![Process
Bookings]![Booking Form].Form.Email)
is commented out because it doesn't work, but was the suggested method
of doing this. If I leave it in, I get 'Compile error: Wrong number of
arguments or invalid property assignment'
Any ideas on how to make it work?
Stapes
I have a piece of code that sends an generates an email if an email
address exists: -
Dim objWord As Word.Application
' in order for this to work - go to Tools / References and tick
Microsoft Word 11.0 Object Library
Set objWord = CreateObject("Word.Application")
With objWord
' Make the application visible.
.Visible = True
' Open the document.
.Documents.Open ("C:\Documents and Settings\stephen\Desktop
\Glynn Barton\Confirmation.doc")
' Move to each bookmark and insert text from the form.
.ActiveDocument.Bookmarks("BkmrkRecipientsName").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[ContactFirstName]) & " " & ([Forms]![Process
Bookings]![Booking Form].Form.[ContactLastName])))
.ActiveDocument.Bookmarks("BkmrkRecipientsName2").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[ContactFirstName]) & " " & ([Forms]![Process
Bookings]![Booking Form].Form.[ContactLastName])))
.ActiveDocument.Bookmarks("BkmrkBillingAddress").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[BillingAddress])))
.ActiveDocument.Bookmarks("BkmrkCity").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[City])))
.ActiveDocument.Bookmarks("BkmrkStateOrProvince").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[StateOrProvince])))
.ActiveDocument.Bookmarks("BkmrkPostalCode").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[PostalCode])))
.ActiveDocument.Bookmarks("BkmrkCountryRegion").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[Country/Region])))
.ActiveDocument.Bookmarks("BkmrkTodaysDate").Select
.Selection.Text = Date
.ActiveDocument.Bookmarks("BkmrkNoOfWeeks").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[NoOfWeeks])))
.ActiveDocument.Bookmarks("BkmrkArrivalDate").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.[DateOfArrival])))
.ActiveDocument.Bookmarks("BkmrkResourceName").Select
.Selection.Text = (CStr(([Forms]![Process Bookings]!
[Booking Form].Form.Combo89.Column(1))))
' .ActiveDocument.Bookmarks("Photo").Select
' .Selection.Paste
End With
' Print the document in the foreground so Microsoft Word 97
' will not close until the document finishes printing.
If Not IsNull(([Forms]![Process Bookings]![Booking
Form].Form.Email)) And InStr(([Forms]![Process Bookings]![Booking
Form].Form.Email), "@") Then
Options.SendMailAttach = True
'objWord.ActiveDocument.SendMail Recipients:=([Forms]!
[Process Bookings]![Booking Form].Form.Email)
objWord.ActiveDocument.SendMail
Else
objWord.ActiveDocument.PrintOut Background:=False
End If
' Close the document without saving changes.
objWord.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
' Quit Microsoft Word 97 and release the object variable.
objWord.Quit
Set objWord = Nothing
Exit Sub
It generates an email OK, but does not put the enailk address in. The
line:
'objWord.ActiveDocument.SendMail Recipients:=([Forms]![Process
Bookings]![Booking Form].Form.Email)
is commented out because it doesn't work, but was the suggested method
of doing this. If I leave it in, I get 'Compile error: Wrong number of
arguments or invalid property assignment'
Any ideas on how to make it work?
Stapes