To create a new item in a non-default folder, use the Add method on the target folder's Items collection. You can use the code at http://www.outlookcode.com/d/code/getfolder.htm to walk the folder hierarchy and return the MAPIFolder corresponding to a given path string.
You use the EntryID (and StoreID) with the Namespace.GetItemFromID method to return an item, based on knowing its ID.

Signature
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003
http://www.turtleflock.com/olconfig/index.htm
and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
http://www.outlookcode.com/jumpstart.aspx
> Is there a way to use VBA to add a task to a public folder? I found the code
> for adding a task to the default task folder and that works fine but I can't
[quoted text clipped - 13 lines]
>
> Steve
David C. Holley - 25 Oct 2005 21:17 GMT
I played with using the EntryId to locate an Item and decided to go with
a solution that put the recordId from my Access DB into a user-defineded
property. I still story the EntryId just for reference, but its the
recordID that finds and makes the changes.
> To create a new item in a non-default folder, use the Add method on the target folder's Items collection. You can use the code at http://www.outlookcode.com/d/code/getfolder.htm to walk the folder hierarchy and return the MAPIFolder corresponding to a given path string.
>
> You use the EntryID (and StoreID) with the Namespace.GetItemFromID method to return an item, based on knowing its ID.
Steve Roberts - 25 Oct 2005 21:24 GMT
David,
Why did you decide to do it that way? Did you have problems using the
entryID?
>I played with using the EntryId to locate an Item and decided to go with a
>solution that put the recordId from my Access DB into a user-defineded
[quoted text clipped - 8 lines]
>> You use the EntryID (and StoreID) with the Namespace.GetItemFromID method
>> to return an item, based on knowing its ID.
David C. Holley - 26 Oct 2005 03:12 GMT
I don't recall the full reasoning. But I know that part of it was to
change the philosophy regarding the AppointmentItems that I was creating
from within Access. The AppointmentItems represent reservations. Every
time the reservation is modified, Access reaches out to Outlook, deletes
all AppointmentItems, and creates a new one. (Basically, a cancel-rebook
approach as opposed to find the item and change it.) I realized that
sometimes the Access DB wasn't capturing the EntryId and so there were
multiple Items being created. The orginal approach was the if
IsNull(EntryId) = True then create the AppointmentItem. Now, Access
deletes any that exists (if any) and the creates them. Since the Access
DB is the system of record, I don't care if any changes in Outlook are
made. They're just overwriten. However, I do have code that runs in
Outlook that will update the record in Access if the date/time is changed.
David H
> David,
>
[quoted text clipped - 13 lines]
>>>You use the EntryID (and StoreID) with the Namespace.GetItemFromID method
>>>to return an item, based on knowing its ID.