With the help and refinement of several posters on this forum, I created a macro, run from the Outlook vba environment, for inserting a date and time stamp on the front end of an e-mails subject, see below for code. The purpose of the macro is to time stamp the subject of each individual email in a folder (eg. the Inbox), so that they can be dragged and dropped into a hard drive / server / dvd folder and will then be listed in chronological order, dependent upon when they were sent.
After updating to Outlook 2010 from 2003, the code which used to operate flawlessly now falls over on the "mItem.Save" line, giving an error message:
Run-time error '-2147221239 (80040109)':
The operation cannot be performed because the message has been changed.
I'm assuming the command has been modified or updated but would be grateful for any assistance in debugging?
After updating to Outlook 2010 from 2003, the code which used to operate flawlessly now falls over on the "mItem.Save" line, giving an error message:
Run-time error '-2147221239 (80040109)':
The operation cannot be performed because the message has been changed.
I'm assuming the command has been modified or updated but would be grateful for any assistance in debugging?
Code:
Sub AddDateToSubject()
Dim mItem As Object
Dim oFolder As Object
Dim j As Long
Set myOlApp = CreateObject("Outlook.Application")
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myFolder = ActiveExplorer.CurrentFolder
For j = myFolder.Items.Count To 1 Step -1
Set mItem = myFolder.Items.Item(j)
If TypeName(mItem) = "MailItem" Then
If Left(mItem.Subject, 12) <> Format(mItem.SentOn, "YYYYMMDDhhmm") Then
mItem.Subject = Format(mItem.SentOn, "YYYYMMDDhhmm") & " " & mItem.Subject
mItem.Save
End If
End If
Next j
Set mItem = Nothing
Set myFolder = Nothing
End Sub