Отправка приглашения на общий доступ для календаря
Сообщения общего доступа, включая приглашения, запросы и ответы на общий доступ, представлены в Microsoft Outlook объектом SharingItem . Метод CreateSharingItem объекта NameSpace используется для создания объектов SharingItem для совместного использования приглашений и запросов общего доступа.
В этом примере используется метод OpenSharingItem для создания объекта SharingItem , представляющего приглашение на общий доступ для папки календаря по умолчанию. После предоставления общего доступа получатель может использовать методы OpenSharedFolder или GetSharedDefaultFolder объекта NameSpace или метод OpenSharedFolder объекта SharingItem , чтобы открыть общую папку.
Пример получает ссылку на объект Folder для папки Calendar по умолчанию для текущего пользователя с помощью метода GetDefaultFolder объекта NameSpace .
Он использует метод CreateSharingItem для создания объекта SharingItem , используя объект Folder для установки контекста общего доступа, используемого объектом SharingItem.
Наконец, метод Add для коллекции Recipients созданного объекта SharingItem вызывается для добавления указанного получателя, а метод Send используется для отправки объекта SharingItem.
Public Sub ShareCalendarByInvitation()
Dim oNamespace As NameSpace
Dim oFolder As Folder
Dim oSharingItem As SharingItem
On Error GoTo ErrRoutine
' Get a reference to the Calendar default folder
Set oNamespace = Application.GetNamespace("MAPI")
Set oFolder = oNamespace.GetDefaultFolder(olFolderCalendar)
' Create a new sharing invitation, using the Calendar
' default folder to establish sharing context.
Set oSharingItem = oNamespace.CreateSharingItem(oFolder)
' Add a recipient to the Recipients collection of
' the sharing invitation.
oSharingItem.Recipients.Add "someone@example.com"
' Send the sharing invitation.
oSharingItem.Send
EndRoutine:
On Error GoTo 0
Set oSharingItem = Nothing
Set oFolder = Nothing
Set oNamespace = Nothing
Exit Sub
ErrRoutine:
Select Case Err.Number
Case 287 ' &H0000011F
' The user denied access to the Address Book.
' This error occurs if the code is run by an
' untrusted application, and the user chose not to
' allow access.
MsgBox "Access to Outlook was denied by the user.", _
vbOKOnly, _
Err.Number & " - " & Err.Source
Case -313393143 ' &HED520009
' This error typically occurs if you set the
' AllowWriteAccess property of a SharingItem
' to True when sharing a default folder.
MsgBox Err.Description, _
vbOKOnly, _
Err.Number & " - " & Err.Source
Case -2147467259 ' &H80004005
' This error typically occurs if the SharingItem
' cannot be sent because of incorrect or
' conflicting property settings.
MsgBox Err.Description, _
vbOKOnly, _
Err.Number & " - " & Err.Source
Case Else
' Any other error that may occur.
MsgBox Err.Description, _
vbOKOnly, _
Err.Number & " - " & Err.Source
End Select
GoTo EndRoutine
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.