(VBA,outlook)VBAで他人の予定表を選んで開く方法
なんだ。"open"ではなく"Display"なんてメソッドあったのね。ExcelやAccessほどネタが無いし、いじったことも無いから良くわからなかった。
Sub testGetSchedule() Set myOlApp = CreateObject("Outlook.Application") Set myNameSpace = myOlApp.GetNamespace("MAPI") Set myRecipient = myNameSpace.CreateRecipient("[開きたいフォルダの名前]") Set hisCalendar = myNameSpace.GetSharedDefaultFolder _ (myRecipient, olFolderCalendar) hisCalendar.Open End Sub Sub testReadSchedule() Dim ol As New Outlook.Application Dim ns As Outlook.NameSpace Set ns = ol.GetNamespace("MAPI") Set myFolder = ns.GetDefaultFolder(olFolderCalendar) With myFolder myitem = .Items(1).Subject myitem1 = .Items(1).Start myitem2 = .Items(1).End myitem3 = .Items(1).Location End With Set ol = Nothing Set ns = Nothing Set appt = Nothing End Sub Sub testSchedule() Set myOlApp = CreateObject("Outlook.Application") Set myNameSpace = myOlApp.GetNamespace("MAPI") Set myRecipient = myNameSpace.CreateRecipient("[開きたいフォルダの名前]") myRecipient.Resolve If myRecipient.Resolved Then Set KimCalendarFolder = _ myNameSpace.GetSharedDefaultFolder _ (myRecipient, olFolderCalendar) End If KimCalendarFolder.Display Debug.Print (KimCalendarFolder.Name) End Sub