Creating Task from Email -- How can I Link Back to Original Email?

S

Steve Newhouse

Hi guys,

I wrote the script below to create a Task from the selected email. I
want to be able to include a link back to the original email in the
body of the task. Is there a way to do this?

Thanks,
Steve

P.S. -- As you can see, I'm trying to remove extra line breaks (but
have to switch to plain text format) because when I copy from the body
of the email to the body of the task, it gets all spaced out.. It
works OK but sometimes still looks bad... Is there any way to make it
look exactly the same in the body of the task as it does in the
original email?

---------

Sub TaskFromEmail()
Dim item As MailItem
Set item = Outlook.Application.ActiveExplorer.Selection.item(1)

Dim olApp As Outlook.Application
Dim olTsk As TaskItem

Dim userField As Outlook.UserProperty
Dim userName As String

Set olApp = New Outlook.Application
Set olTsk = olApp.CreateItem(olTaskItem)

With olTsk
.Subject = item.Subject
.Status = olTaskNotStarted

item.BodyFormat = olFormatPlain
.Body = Replace(item.Body, " " & vbCrLf, vbCr)

.Save

End With

Set olTsk = Nothing
Set olApp = Nothing

End Sub
 
E

Eric Legault [MVP - Outlook]

You can use HTML to include a URL to an Outlook item by using the EntryID
value for that item. The URL would look something like this:

outlook:0000000038F2773A1C598D49882D14EC0C5C40C307005097C3A46725204AA35E65B312CAAC8F0000003D6E3F0000C89D644618E4C8408094239F8819D4700000015149620000

Keep in mind that if the item is moved the EntryID value will change.

BTW, I'm not sure why your message body is messed up. Are you setting the
body by using DestinationItem.Body = SourceItem.Body? Try
DestinationItem.Body = SourceItem.HTMLBody as well.
 

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