Получить данные AppointmentItem при запуске отправки - PullRequest
2 голосов
/ 12 апреля 2019

Когда я отправляю встречу в Outlook 2016, я использую следующее для вызова кода VBA:

Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

Как отобразить данные, относящиеся к типу "AppointmentItem"?

Я ожидаю сообщения «Вы хотите поговорить о компьютере в школе»,
но я получаю сообщение об ошибке «438».

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

    Dim prompt As String
    prompt = "Do you want to talk about " & Item.Subject    'Works
    prompt = prompt & " at " & Item.Location                'Error
    If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then
        Cancel = True
    End If

End Sub

1 Ответ

0 голосов
/ 13 апреля 2019

Если вы отправляете приглашение на собрание, отправленный элемент сам по себе является olMeetingRequest, а не olAppoinmentItem.

Вы можете обратиться к соответствующему элементу встречи по номеру GetAssociatedAppointment

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim objAppointment As AppointmentItem
    If Item.Class = olMeetingRequest Then
        Set objAppointment = Item.GetAssociatedAppointment(False)
        Debug.Print objAppointment.Subject
        Debug.Print objAppointment.Location
    End If
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...