Solved

Outlook 2007 sending Word 2003 document in email body

Posted on 2009-07-12
4
492 Views
Last Modified: 2012-05-07
hi all,

I am trying to create the macro in Word 2003 which allows you to create an email in Outlook 2007 and put the Word document in the body of the email.

I have seen the script here and got it working:

http://www.experts-exchange.com/Software/Office_Productivity/Groupware/Outlook/Q_24428085.html

However the script just generates an email with the default to, subject etc in it and sends it immediately.  I need the script to pop up the Outlook email so i can enter the to adress, subject etc and preview the body text.

I have absolutely no VB experience or knowledge and don't have a clue how I can make this happen.  Could anyone help?

nathan
Sub SendDocumentInMail()

 

Dim bStarted As Boolean

'Dim oOutlookApp As Outlook.Application

'Dim oItem As Outlook.MailItem

 

On Error Resume Next

 

'Get Outlook if it's running

Set oOutlookApp = GetObject(, "Outlook.Application")

If Err <> 0 Then

    'Outlook wasn't running, start it from code

    Set oOutlookApp = CreateObject("Outlook.Application")

    bStarted = True

End If

 

'Create a new mailitem

Set oItem = oOutlookApp.CreateItem(olMailItem)

 

With oItem

    'Set the recipient for the new email

   .To = "recipient@mail.com"

    'Set the recipient for a copy

    .CC = "recipient2@mail.com"

    'Set the subject

    .Subject = "New subject"

    'The content of the document is used as the body for the email

    .Body = ActiveDocument.Content

    .Send

End With

 

If bStarted Then

    'If we started Outlook from code, then close it

    oOutlookApp.Quit

End If

 

'Clean up

Set oItem = Nothing

Set oOutlookApp = Nothing

 

End Sub

Open in new window

0
Comment
Question by:natrat22
  • 2
  • 2
4 Comments
 
LVL 37

Accepted Solution

by:
Joanne M. Orzech earned 500 total points
ID: 24840533
Instead of the .Send line change it to .Display and I also added an input box for the recipient.

Sub SendDocumentInMail()

 

Dim bStarted As Boolean

'Dim oOutlookApp As Outlook.Application

'Dim oItem As Outlook.MailItem

 

On Error Resume Next

 

'Get Outlook if it's running

Set oOutlookApp = GetObject(, "Outlook.Application")

If Err <> 0 Then

    'Outlook wasn't running, start it from code

    Set oOutlookApp = CreateObject("Outlook.Application")

    bStarted = True

End If

 

'Create a new mailitem

Set oItem = oOutlookApp.CreateItem(olMailItem)

 

Recipient = InputBox("Please enter recipient(s) email address(es).")

 

With oItem

    'Set the recipient for the new email

   .To = Recipient

    'Set the recipient for a copy

    '.CC = "recipient2@mail.com"

    'Set the subject

    .Subject = "New subject"

    'The content of the document is used as the body for the email

    .Body = ActiveDocument.Content

    '.Send

    .Display

End With

 
 
 

If bStarted Then

    'If we started Outlook from code, then close it

    oOutlookApp.Quit

End If

 

'Clean up

Set oItem = Nothing

Set oOutlookApp = Nothing

 

End Sub

Open in new window

0
 
LVL 1

Author Comment

by:natrat22
ID: 24855224
Jorzech, you rock.  thanks, that worked perfectly.
0
 
LVL 1

Author Closing Comment

by:natrat22
ID: 31602674
much appreciated.
0
 
LVL 37

Expert Comment

by:Joanne M. Orzech
ID: 24860686
Terrific!  I am so pleased I was able to help you.  Thanks much natrat22 :)

Joanne Orzech
MS Word MVP
EE Zone Advisor
0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Following basic email etiquette rules will help you write a professional email and achieve a good, lasting impression with your contacts.
Large Outlook files lead to various unwanted errors and corruption issues. Furthermore, large outlook files can also make Outlook take longer to start-up, search, navigate, and shut-down. So, In this article, i will discuss a method to make your Out…
This video walks the viewer through the process of creating Hyperlinks for the web and other documents. Select the "Insert" tab: Click "Hyperlink":  Type "http://" followed by a web address to reference a website or navigate to a document to ref…
Office 365 is currently available in five editions. Three of them are for business use: Office 365 Business Essentials, Office 365 Business, and Office 365 Business Premium. Two of them are for home/personal use: Office 365 Home and Office 365 Perso…

914 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now