Enviar um convite de compartilhamento para um calendário
O compartilhamento de mensagens, incluindo convites de compartilhamento, solicitações de compartilhamento e respostas de compartilhamento, são representados no Microsoft Outlook pelo objeto SharingItem . O método CreateSharingItem do objeto NameSpace é usado para criar objetos SharingItem para compartilhamento de convites e solicitações de compartilhamento.
Este exemplo usa o método OpenSharingItem para criar um SharingItem que representa um convite de compartilhamento de sua pasta padrão Calendário. Depois de compartilhado, o destinatário poderá usar os métodos OpenSharedFolder ou GetSharedDefaultFolder do objeto NameSpace ou o método OpenSharedFolder do objeto SharingItem para abrir a pasta compartilhada.
O exemplo obtém uma referência de objeto Folder para a pasta padrão Calendário para o usuário atual, usando o método GetDefaultFolder do objeto NameSpace .
Ele usa o método CreateSharingItem para criar um novo objeto SharingItem, usando o objeto Folder para estabelecer o contexto de compartilhamento usado por um SharingItem.
Por fim, o método Add para a coleção Destinatários do objeto SharingItem recém-criado é chamado para adicionar o destinatário especificado e o método Enviar é usado para enviar o 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
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.