2015-07-28 71 views
0

早上好。我有一個項目,該項目包括制定了許多人之間的汽車位置計劃。目的是讓汽車對那些誰的任務優先。所以要做到這一點,當他們計劃與一個人(汽車)會面時,我的vba代碼必須識別有優先權的人,並對他們做出「是」,對其他人做出「不」。我的vba代碼獲取所有日曆會議項目並計劃它們。檢查前臺會議是否已被接受

問題是,當會議被拒絕時,它會從日曆中消失,當它被接受時,它會停留。我想知道會議文件是否已被接受,以避免再次計劃。

collectionItem.Respond(olMeetingAccepted,bool)方法不允許這樣做。我已經嘗試了ResponseStatus,但我不明白它何時有效。請幫忙!

+0

但如果用戶接受或拒絕約會,從收件箱中的MeetingItem對象被刪除。如果您仍然有MeetingItem,用戶還沒有響應。 –

+0

但它不會從日曆中消失 – Ediruth

+0

如果約會被接受。如果您拒絕預約,它將從日曆文件夾中消失。那不是你看到的嗎? –

回答

0

當它被接受時,它停留。

的AppointmentItem類的ResponseStatus屬性返回一個OlResponseStatus常量指示該約會當前用戶會議的總體狀態。有關可能的值,請參閱OlResponseStatus Enumeration

+0

響應狀態是否設置,如果它們拒絕而沒有發送響應? – Maderas

0

我找到了解決方案,這是多虧了你。該鏈接幫助我使用ResponseStatus。我傻它是如此簡單,代碼如下:

Dim oAppointmentItem As Outlook.AppointmentItem 

For Each oAppointmentItem In oAppointments.Items 
     dDate = DateValue(oAppointmentItem.Start) 
     If dDate = DateValue(Date) Then 
       //line I want is the next 
      If (oAppointmentItem.ResponseStatus = olResponseAccepted) Then 
      Else 
       If ItemExist(listDestZone, oAppointmentItem.Location) Then 
        Set varDestZone = listDestZone.Item(oAppointmentItem.Location) 

       Select Case varDestZone.zone 
        Case zone1: MeetingsZone1.Add oAppointmentItem 
        Case zone2: MeetingsZone2.Add oAppointmentItem 
        Case zone3: MeetingsZone3.Add oAppointmentItem 
        Case zone4: MeetingsZone4.Add oAppointmentItem 
       End Select 
      End If 
     End If 
    End If 
Next 

感謝