MailItem from an RSS feed

Status
Not open for further replies.
D

Dan

I am using Outlook 2007 and VB6. I am using Outlook Automation in a VB

program to choose certain Outlook messages from a folder called Archive, save

them as MSG files, and then delete the messages. It works fine when only

email messages are in the folder.

But occasionally I subscribe to RSS feeds, and sometimes I drag the messages

from the RSS feeds to the Archive folder. I have to skip over those because I

can't treat them as MailItem objects.

Here is a simplified view of the code I'm using:

Dim DateTimeStr As String

Dim FilterStr As String

Dim Message As Outlook.MailItem

Dim MessageFolder As Object

Dim MessageList As Object

Dim ObjItem As Object

Dim OutlookApp As Object

Dim OutlookNamespace As Object

Dim SelectedOutlookFolder as Outlook.Folder

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

Set OutlookNamespace = OutlookApp.GetNamespace("MAPI")

Set MessageFolder =

OutlookNamespace.GetFolderFromID(SelectedOutlookFolder.EntryID,

SelectedOutlookFolder.StoreID)

DateTimeStr = Format("7/1/2009 12:00am", "ddddd h:nn AMPM")

FilterStr = "[SentOn] < '" & DateTimeStr & "'"

Set MessageList = MessageFolder.Items.Restrict(FilterStr)

If Not MessageList Is Nothing Then

For Each ObjItem In MessageList

Set Message = Nothing

On Error Resume Next

Set Message = ObjItem

If Not Message Is Nothing Then

End If

Next ObjItem

End If

Is there any way that I can test for the RSS feed messages in this same loop

and save them as MSG files also? Thanks for your help.
 
S

Sue Mosher [MVP]

This is the problem statement:

Dim Message As Outlook.MailItem

It makes an assumption that all items being processed are MailItem objects.

If you use Object instead of MailItem for the declaration, your code should

still work fine.

Also, you should not delete messages inside a For Each ... Next loop.

Instead, use a down-counting loop, e.g.:

Dim ObjItem As Object

count = MessageList.Count

For i = count to 1 Step -1

Set ObjItem = MessageList(i)

ObjItem.SaveAs "<some path>", olMSG

ObjItem.Delete

Next

Sue Mosher

"Dan" <Dan> wrote in message

news:39076CBB-6480-4A98-8DDA-7AEF32DC9957@microsoft.com...
> I am using Outlook 2007 and VB6. I am using Outlook Automation in a VB
> program to choose certain Outlook messages from a folder called Archive,
> save
> them as MSG files, and then delete the messages. It works fine when only
> email messages are in the folder.

> But occasionally I subscribe to RSS feeds, and sometimes I drag the
> messages
> from the RSS feeds to the Archive folder. I have to skip over those
> because I
> can't treat them as MailItem objects.

> Here is a simplified view of the code I'm using:

> Dim DateTimeStr As String
> Dim FilterStr As String
> Dim Message As Outlook.MailItem
> Dim MessageFolder As Object
> Dim MessageList As Object
> Dim ObjItem As Object
> Dim OutlookApp As Object
> Dim OutlookNamespace As Object
> Dim SelectedOutlookFolder as Outlook.Folder

> Set OutlookApp = GetObject(, "Outlook.Application")
> Set OutlookNamespace = OutlookApp.GetNamespace("MAPI")
> Set MessageFolder =
> OutlookNamespace.GetFolderFromID(SelectedOutlookFolder.EntryID,
> SelectedOutlookFolder.StoreID)

> DateTimeStr = Format("7/1/2009 12:00am", "ddddd h:nn AMPM")
> FilterStr = "[SentOn] < '" & DateTimeStr & "'"
> Set MessageList = MessageFolder.Items.Restrict(FilterStr)

> If Not MessageList Is Nothing Then
> For Each ObjItem In MessageList
> Set Message = Nothing
> On Error Resume Next
> Set Message = ObjItem
> If Not Message Is Nothing Then
> End If
> Next ObjItem
> End If

> Is there any way that I can test for the RSS feed messages in this same
> loop
> and save them as MSG files also? Thanks for your help.
 
D

Dan

Sue,

Thank you. You solved my problem.

Dan

"Sue Mosher [MVP]" wrote:


> This is the problem statement:

> Dim Message As Outlook.MailItem

> It makes an assumption that all items being processed are MailItem objects.
> If you use Object instead of MailItem for the declaration, your code should
> still work fine.

> Also, you should not delete messages inside a For Each ... Next loop.
> Instead, use a down-counting loop, e.g.:

> Dim ObjItem As Object
> count = MessageList.Count
> For i = count to 1 Step -1
> Set ObjItem = MessageList(i)
> ObjItem.SaveAs "<some path>", olMSG
> ObjItem.Delete
> Next

> > Sue Mosher
> > >

> "Dan" <Dan> wrote in message
> news:39076CBB-6480-4A98-8DDA-7AEF32DC9957@microsoft.com...
> >I am using Outlook 2007 and VB6. I am using Outlook Automation in a VB
> > program to choose certain Outlook messages from a folder called Archive,
> > save
> > them as MSG files, and then delete the messages. It works fine when only
> > email messages are in the folder.
> > But occasionally I subscribe to RSS feeds, and sometimes I drag the
> > messages
> > from the RSS feeds to the Archive folder. I have to skip over those
> > because I
> > can't treat them as MailItem objects.
> > Here is a simplified view of the code I'm using:
> > Dim DateTimeStr As String
> > Dim FilterStr As String
> > Dim Message As Outlook.MailItem
> > Dim MessageFolder As Object
> > Dim MessageList As Object
> > Dim ObjItem As Object
> > Dim OutlookApp As Object
> > Dim OutlookNamespace As Object
> > Dim SelectedOutlookFolder as Outlook.Folder
> > Set OutlookApp = GetObject(, "Outlook.Application")
> > Set OutlookNamespace = OutlookApp.GetNamespace("MAPI")
> > Set MessageFolder =
> > OutlookNamespace.GetFolderFromID(SelectedOutlookFolder.EntryID,
> > SelectedOutlookFolder.StoreID)
> > DateTimeStr = Format("7/1/2009 12:00am", "ddddd h:nn AMPM")
> > FilterStr = "[SentOn] < '" & DateTimeStr & "'"
> > Set MessageList = MessageFolder.Items.Restrict(FilterStr)
> > If Not MessageList Is Nothing Then
> > For Each ObjItem In MessageList
> > Set Message = Nothing
> > On Error Resume Next
> > Set Message = ObjItem
> > If Not Message Is Nothing Then
> > End If
> > Next ObjItem
> > End If
> > Is there any way that I can test for the RSS feed messages in this same
> > loop
> > and save them as MSG files also? Thanks for your help.


>
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
G Event when creating task from mailitem Outlook VBA and Custom Forms 2
A Run-time error '430' on certain emails when trying to set "Outlook.mailitem" as "ActiveExplorer.Selection.Item" Outlook VBA and Custom Forms 2
U Outbox Message Stuck after reading some MailItem Properties with VBA Outlook VBA and Custom Forms 1
oliv- Best practice for catching mailitem.events Outlook VBA and Custom Forms 0
oliv- How to select an mailitem in explorer with "show as conversation" Outlook VBA and Custom Forms 8
JorgeDario How to capture and save the text, when responding a MailItem? Outlook VBA and Custom Forms 3
JorgeDario how to check a MailItem has a digital signature (SMIME) with vba? Outlook VBA and Custom Forms 1
JorgeDario ¿What property of mailitem can be used like primary key? Outlook VBA and Custom Forms 6
S Outlook VBA rule script to process both MailItem and MeetingItem Using Outlook 0
B right click outlook objects in OL2010 acts on current inbox mailitem Using Outlook 6
C MailItem Find method doesn't work Using Outlook 0
C MailItem.SaveAs not working Outlook VBA and Custom Forms 10
G RE:The signature is also inserted if you touch the MailItem. Outlook VBA and Custom Forms 1
B Add signature to MailItem Outlook VBA and Custom Forms 3
C How can I create a new MailItem inside a user folder? Outlook VBA and Custom Forms 4
S Create a new Outlook MailItem in an Outlook folder(not a draft) Outlook VBA and Custom Forms 2
A How to get OOM MailItem Raw data Outlook VBA and Custom Forms 2
S Saved Property of MailItem is copied Outlook VBA and Custom Forms 1
S MailItem Find Method question Outlook VBA and Custom Forms 6
N Getting the attachments in MailItem Outlook VBA and Custom Forms 1
T How to get MailItem.Body without security warning in Outlook 2010 Outlook VBA and Custom Forms 2
S ->[O2007] Parsing each line of a MailItem HTMLBody? Outlook VBA and Custom Forms 2
T How to get Inspector or MailItem from wordEditor Outlook VBA and Custom Forms 6
A Select the position of an attached file in a HTML mailitem Outlook VBA and Custom Forms 1
M MailItem object has no property for when a reply was sent Outlook VBA and Custom Forms 3
B Insert information to MailItem Outlook VBA and Custom Forms 1
E Properties added to MailItem in ItemSend event visible to recipien Outlook VBA and Custom Forms 1
V Setting HTMLBody of new mailItem Outlook VBA and Custom Forms 1
V How to find mailitem in the inspector is a brand new one Outlook VBA and Custom Forms 2
M Activate "Add digital signature to this massage" on a MailItem? Outlook VBA and Custom Forms 1
K importing EML in MailItem Outlook VBA and Custom Forms 1
A mailitem Send issue Outlook VBA and Custom Forms 5
M Get email address from MailItem.To? Outlook VBA and Custom Forms 6
S UserProperties of MailItem object. Outlook VBA and Custom Forms 3
R How to capture a Mailitem Event Outlook VBA and Custom Forms 3
S get current position in message body of mailitem Outlook VBA and Custom Forms 8
S How to get RFC822 format message from the MailItem object. Outlook VBA and Custom Forms 4
J Toolbar button to process current mailitem Outlook VBA and Custom Forms 1
J Outlook 2007 crashed when pushing send on a displayed mailitem Outlook VBA and Custom Forms 1
N Memory with MailItem.Send Outlook VBA and Custom Forms 1
P Adding a button in a mailitem Outlook VBA and Custom Forms 1
S Reading mailitem after mail is send give runtime error. Outlook VBA and Custom Forms 1
D Max. length of MSO MailItem.EntryID Outlook VBA and Custom Forms 6
R MailItem.Display() error Outlook VBA and Custom Forms 1
R Clone mailitem Outlook VBA and Custom Forms 5
R MailItem Outlook VBA and Custom Forms 2
D Length of the MailItem.EntryID Outlook VBA and Custom Forms 2
M What is the recommendet way to read/write a user defined Field (Named Property) in the MailItem Obje Outlook VBA and Custom Forms 1
M What is the recommendet way to read/write a user defined Field (Named Property) in the MailItem Obje Outlook VBA and Custom Forms 5
J Parent of moved mailItem Outlook VBA and Custom Forms 5

Similar threads

Top