G'Day Greg,
I don't have experience with a shared Calendar, but I did have
this problem with a 'second' Side-By-Side calendar. The second
Calendar I have (called OtherCalendar here) is another Folder
within the (default) Calendar folder.
A similar approach may work for you.....replace the folder
paths with those appropriate for you.....
This was accomplished with VBA code - although I am finding
that it occasionally "misfires" due to some timing problem (That's
the reason for the number of 'DoEvents' in the code).
In Outlook, press ALT+F11 to display the VBA window.
Upper Left there is an Object "Tree" - double-click
"ThisOutlookSession"
to display an empty code window, and paste the in code below.
Be careful to correct any line breaks that OE might have inserted.
Modify the Folder Names in the Application_Startup() section to
suit your needs.
The Function GetFolder() is courtesy of Sue Mosher -
http://www.outlookcode.com/codedetail.aspx?id=824.
My thanks are also due to Michael Bauer.
--
Regards,
Pat Garard
Melbourne, Australia
_______________________
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Public Function GetFolder(strFolderPath As String) As MAPIFolder
' folder path needs to be something like
' "Public Folders\All Public Folders\Company\Sales"
Dim objApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Dim colFolders As Outlook.Folders
Dim objFolder As Outlook.MAPIFolder
Dim arrFolders() As String
Dim I As Long
On Error Resume Next
strFolderPath = Replace(strFolderPath, "/", "\")
arrFolders() = Split(strFolderPath, "\")
Set objApp = CreateObject("Outlook.Application")
Set objNS = objApp.GetNamespace("MAPI")
Set objFolder = objNS.Folders.Item(arrFolders(0))
If Not objFolder Is Nothing Then
For I = 1 To UBound(arrFolders)
Set colFolders = objFolder.Folders
Set objFolder = Nothing
Set objFolder = colFolders.Item(arrFolders(I))
If objFolder Is Nothing Then
Exit For
End If
Next
End If
Set GetFolder = objFolder
Set colFolders = Nothing
Set objNS = Nothing
Set objApp = Nothing
End Function
Private Sub Application_Startup()
DoEvents
' Select the default Calendar ...
Application.ActiveExplorer.SelectFolder _
GetFolder("Personal Folders\Calendar")
DoEvents
' ... select the Other Calendar ...
Application.ActiveExplorer.SelectFolder _
GetFolder("Personal Folders\Calendar\OtherCalendar")
DoEvents
' ... having made sure that both my Calendars are selected, and will
therefore
' be visible in Calendar view, I use the next line go back to Outlook
Today
Application.ActiveExplorer.SelectFolder _
GetFolder("Personal Folders")
End Sub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~