检查Outlook中的会议是否已被接受

时间:2015-07-28 08:08:49

标签: vba outlook

早上好。我有一个项目,该项目包括制定许多人之间的汽车位置计划。目的是让汽车给那些负责任务的人优先考虑。因此,要做到这一点,当他们计划与某人(汽车)会面时,我的vba代码必须识别具有优先权的人,并对他们回答“是”,对其他人回答“否”。我的vba代码获取所有日历会议项目并进行规划。

问题在于,当会议被拒绝时,它会从日历中消失,当它被接受时,它就会停止。我想知道会议是否已经被接受,以避免重新计划。

collectionItem.Respond(olMeetingAccepted,bool)方法不允许这样做。我已经尝试过ResponseStatus,但我不明白它何时起作用。请帮忙!

2 个答案:

答案 0 :(得分:0)

  

当它被接受时,它会停留。

AppointmentItem类的ResponseStatus属性返回grACountFilter常量,指示当前用户进行约会的会议的总体状态。有关可能的值,请参阅OlResponseStatus Enumeration

答案 1 :(得分: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

由于