Send Word doc attachment

C

Chris

I'm a super novice with VBA, so please bear with my lack of knowledge. :)
Using Word and Outlook 2003, and thanks to code offered in previous
discussions here, I have a Send Form command button on a Word form that opens
an Outlook message, pre-addressed, with a body text offering "Additional
comments:" The only problem is the Word document attachment icon (the
message opens in Rich Text format) is directly above the body text. Some
message recipients want to click directly next to the colon after "comments"
and begin to type. Naturally, the attachment icon is activated, and the
typed additional text pushes the icon across the message.

Is there any way to add a blank line between the icon and the beginning of
the body text? Or, is there a way to make the message format HTML so that
the attachment icon shows under the Subject line and not in the message body?
Would greatly appreciate any assistance.

The code I'm using:
Private Sub CommandButton1_Click()

Dim OL As Object
Dim EmailItem As Object
Dim Doc As Document

Application.ScreenUpdating = False
Set OL = CreateObject("Outlook.Application")
Set EmailItem = OL.CreateItem(olMailItem)
Set Doc = ActiveDocument
With EmailItem
.Subject = "Subject Title"
.Body = "Additional comments:"
.To = "(e-mail address removed)"
.Importance = olImportanceNormal 'Or olImprotanceHigh Or
olImprotanceLow
.Attachments.Add Doc.FullName
.Display
End With

Application.ScreenUpdating = True

Set Doc = Nothing
Set OL = Nothing
Set EmailItem = Nothing

End Sub
 
M

Michael Bauer [MVP - Outlook]

Depending on your Outlook version, you can set the EMailItem's BodyFormat
property to 2 (for HTM).

For a line break add vbCRLF.

--
Best regards
Michael Bauer - MVP Outlook

: Outlook Categories? Category Manager Is Your Tool:
: <http://www.vboffice.net/product.html?pub=6&lang=en>


Am Fri, 16 May 2008 06:52:01 -0700 schrieb Chris:
 
C

Chris

Thanks so much! The BodyFormat property did the trick. I didn't need to use
the line break. But for future information, where in the code would I add
vbCRLF, and would the line break be at the beginning of the body text or
after the attachment icon (if the message still was in Rich Text format)?

Since my original post, another issue has come up. The owner of the form
added a hyperlink to it (where it resides on a network server location) on an
intranet web page. He made the document read-only. By doing so, when a
person completed the form and clicked the Send Form command button, a Save As
dialog box displayed (because the code originally included the line
ActiveDocument.Save before the With EmailItem line). We removed this
ActiveDocument.Save from the code so that the macro would run and immediately
open an Outlook new message. Now, however, the attached document reverts to
being blank and does not contain the user's form field entries. If we leave
the ActiveDocument.Save line in the code, a SaveAs dialog box displays as
soon as the Send Form command button is clicked, confusing the form user. If
the document is not made read-only, and the ActiveDocument.Save line remains
in the code, the Send Form button works as it is supposed to, the Outlook
message displays in order to insert additional comments before sending, and
the message sends normally, and the attached document includes the filled out
form fields. The Word document remains displayed on the screen, however.
When closed, there is no Save reminder message box, and the user's form field
entries are saved back to the server location document. When the next user
activates the web page's hyperlink to it, the document does not open "clean"
but displays the previous user's entries.

As you can see, I now appear to be way out of my element. Thanking you in
advance for any help.

Chris
 
M

Michael Bauer [MVP - Outlook]

#1: You decide that yourself. If you add it to the beginning of the Body
then it will be exactly there.

#2: Frankly, I don't know what you're talking about.

--
Best regards
Michael Bauer - MVP Outlook

: Outlook Categories? Category Manager Is Your Tool:
: <http://www.vboffice.net/product.html?pub=6&lang=en>



Am Fri, 16 May 2008 16:42:02 -0700 schrieb Chris:
 
S

steve-w

Chris wrote on 05/16/2008 09:52 ET
I'm a super novice with VBA, so please bear with my lack of knowledge. :-
Using Word and Outlook 2003, and thanks to code offered in previou
discussions here, I have a Send Form command button on a Word form that open
an Outlook message, pre-addressed, with a body text offering &quot;Additiona
comments:&quot; The only problem is the Word document attachment icon (th
message opens in Rich Text format) is directly above the body text. Som
message recipients want to click directly next to the colon afte
&quot;comments&quot
and begin to type. Naturally, the attachment icon is activated, and th
typed additional text pushes the icon across the message

Is there any way to add a blank line between the icon and the beginning o
the body text? Or, is there a way to make the message format HTML so tha
the attachment icon shows under the Subject line and not in the message body
Would greatly appreciate any assistance

The code I'm using
Private Sub CommandButton1_Click(

Dim OL As Objec
Dim EmailItem As Objec
Dim Doc As Documen

Application.ScreenUpdating = Fals
Set OL = CreateObject(&quot;Outlook.Application&quot;
Set EmailItem = OL.CreateItem(olMailItem
Set Doc = ActiveDocumen
With EmailIte
.Subject = &quot;Subject Title&quot
.Body = &quot;Additional comments:&quot
.To = &quot;&quot
.Importance = olImportanceNormal 'Or olImprotanceHigh O
olImprotanceLo
.Attachments.Add Doc.FullNam
.Displa
End Wit

Application.ScreenUpdating = Tru

Set Doc = Nothin
Set OL = Nothin
Set EmailItem = Nothin

End Su
I am using this code to open Outlook and attach the document. How would
chang
it to open the default email
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top