The declaration for colFolderItems needs to be at class level outside of the
startup procedure so it stays alive after that procedure ends. You'd also
need to have the items you're adding to the collection already instantiated
of course.
To instantiate a Class1 object do this:
Dim oClass As New Class1
You then need to set oClass (Class1) Folder and Items properties so those
should be Public:
' in Class1
Public WithEvents colItems As Outlook.Items
Public oFolder As Outlook.MAPIFolder
Now assuming you have the folders you want as oFolder1 and oFolder2 you'd do
this:
Set oClass.oFolder = oFolder1
Set oClass.colItems = oFolder1.Items
and repeat with a new instance of Class1 for each folder such as oFolder2.
Of course you'd need code to declare and instantiate all the folders you
want to monitor.
--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Professional Programming Outlook 2007.
Reminder Manager, Extended Reminders, Attachment Options.
http://www.slovaktech.com/products.htm
"Nigel RS" wrote in message
...
Hi Ken
Thank you very much, but I am not sure I follow everything you said....
In Class1 module I have added the following.....
Private WithEvents colItems As Outlook.Items
Private oFolder As Outlook.MAPIFolder
Private Sub colItems_ItemAdd(Item As Object)
' test to show an action occurs
MsgBox "Mail: " & Item
End Sub
In ThisOutlookSession I have added......
Private Sub Application_Startup()
Private colFolderItems As New Collection
colFolderItems.Add Item:="RSM Data", Key:=CStr(1)
colFolderItems.Add Item:="RSS Data", Key:=CStr(2)
End Sub
What I am not sure about is how to intialize the class module??
I am sure it must be simple!
Cheers