Outlook: como manter o cancelamento da reunião no calendário como organizador?
No Outlook, como organizador da reunião, quando você cancelar a reunião, ela será excluída automaticamente do calendário. Em alguns casos, você pode querer manter as reuniões canceladas no calendário para fazer algumas marcações. No entanto, não há recursos internos no Outlook que possam lidar com esse trabalho. Neste tutorial, ele fornece dois códigos VBA para manter a reunião como um compromisso durante o cancelamento.
Códigos VBA para copiar reunião cancelada como compromisso
Códigos VBA para copiar reunião cancelada como compromisso
Aqui estão dois códigos para cancelar a reunião e copiá-la e colá-la como um compromisso ao mesmo tempo.
Observação: antes de habilitar o código, verifique se essas duas opções estão marcadas:
Habilite o Outlook, clique em Envie o > Opções, na janela Opções do Outlook, clique em trust Center guia e clique em Configurações da Central de confiança, em seguida, na janela Central de Confiabilidade, clique em Configurações de macro guia, cheque Habilite todas as macros (não recomendado, o código potencialmente perigoso pode ser executado) e a Aplicar configurações de segurança de macro aos suplementos instalados opções. Clique OK > OK para fechar as janelas. Reiniciar Outlook.
1. Vá para a exibição do Calendário do Outlook e selecione a reunião que deseja cancelar Pressione outro + F11 para ativar a janela Microsoft Visual Basic for Applications.
2. Clique inserção > Módulo para inserir um novo módulo em branco. Em seguida, copie e cole o código abaixo para ele.
Código: Copiar reunião como compromisso e cancelá-lo
Sub CopyMeetingAsAppointmentBeforeCancel()
'UpdatebyExtendoffice20221129
Dim xAppointmentItem As AppointmentItem
Dim xMeetingItem As AppointmentItem
On Error Resume Next
Set xMeetingItem = GetCurrentItem()
Set xAppointmentItem = Application.CreateItem(olAppointmentItem)
With xAppointmentItem
.Subject = "Canceled: " & xMeetingItem.Subject
.Start = xMeetingItem.Start
.Duration = xMeetingItem.Duration
.Location = xMeetingItem.Location
.Body = xMeetingItem.Body
.Save
.Move Application.ActiveExplorer.CurrentFolder
End With
With xMeetingItem
.MeetingStatus = olMeetingCanceled
.Send
.Delete
End With
Set xAppointmentItem = Nothing
Set xMeetingItem = Nothing
End Sub
Function GetCurrentItem() As Object
On Error Resume Next
Select Case TypeName(Application.ActiveWindow)
Case "Explorer"
Set GetCurrentItem = Application.ActiveExplorer.Selection.Item(1)
Case "Inspector"
Set GetCurrentItem = Application.ActiveInspector.CurrentItem
End Select
End Function
3. Clique Execute ou pressione F5 tecla, agora a reunião selecionada foi cancelada e um novo compromisso chamado Cancelado e assunto.
Se você deseja copiar e colar a reunião como um compromisso em outro calendário e cancelar a reunião, use o código abaixo:
Código: Copiar reunião como compromisso em outro calendário e cancelá-lo
Sub CopyMeetingAsAppointmentToCalenderBeforeCancel()
'Updatebyextendoffice20221129
Dim xDestCalendar As Outlook.MAPIFolder
Dim xNameSpace As Outlook.NameSpace
Dim xAppointmentItem As AppointmentItem
Dim xMeetingItem As AppointmentItem
On Error Resume Next
Set xNameSpace = Application.GetNamespace("MAPI")
Set xDestCalendar = xNameSpace.PickFolder
If xDestCalendar.DefaultItemType <> olAppointmentItem Then
MsgBox "Please Select calendar folder. ", vbOKOnly + vbInformation, "Kutools for Outlook"
Exit Sub
End If
Set xMeetingItem = GetCurrentItem()
Set xAppointmentItem = Application.CreateItem(olAppointmentItem)
With xAppointmentItem
.Subject = "Canceled: " & xMeetingItem.Subject
.Start = xMeetingItem.Start
.Duration = xMeetingItem.Duration
.Location = xMeetingItem.Location
.Body = xMeetingItem.Body
.Save
.Move xDestCalendar
End With
With xMeetingItem
.MeetingStatus = olMeetingCanceled
.Send
.Delete
End With
Set xDestCalendar = Nothing
Set xNameSpace = Nothing
Set xAppointmentItem = Nothing
Set xMeetingItem = Nothing
End Sub
Function GetCurrentItem() As Object
On Error Resume Next
Select Case TypeName(Application.ActiveWindow)
Case "Explorer"
Set GetCurrentItem = Application.ActiveExplorer.Selection.Item(1)
Case "Inspector"
Set GetCurrentItem = Application.ActiveInspector.CurrentItem
End Select
End Function
Clique Execute ou pressione F5 tecla, uma caixa de diálogo Selecionar pasta aparece para você escolher uma pasta de calendário para colar o compromisso e, em seguida, clique em OK.
Agora a reunião foi cancelada e copiada e colada como um compromisso na pasta do calendário que você escolher.
Melhores ferramentas de produtividade de escritório
Notícias de última hora: lançamento do Kutools para Outlook Free Version!
Experimente o novo Kutools para Outlook Versão GRATUITA com mais de 70 recursos incríveis, para você usar PARA SEMPRE! Clique para baixar agora!
📧 Automação de e-mail: Resposta automática (disponível para POP e IMAP) / Agendar envio de e-mails / CC/BCC automático por regras ao enviar e-mail / Encaminhamento automático (regras avançadas) / Adicionar saudação automaticamente / Divida automaticamente e-mails de vários destinatários em mensagens individuais ...
📨 Gestão de E-mail: Recuperar e-mails / Bloquear e-mails fraudulentos por assuntos e outros / Apagar Emails Duplicados / Pesquisa Avançada / Consolidar pastas ...
📁 Anexos Pró: Salvar em lote / Desanexar lote / Comprimir em Lote / Salvamento automático / Desanexação Automática / Compressão automática ...
???? Interface Mágica: 😊Mais emojis bonitos e legais / Lembrá-lo quando e-mails importantes chegarem / Minimize o Outlook em vez de fechar ...
???? Maravilhas com um clique: Responder a todos com anexos recebidos / E-mails antiphishing / 🕘Mostrar fuso horário do remetente ...
👩🏼🤝👩🏻 Contatos e calendário: Adicionar contatos em lote de e-mails selecionados / Dividir um grupo de contatos em grupos individuais / Remover lembretes de aniversário ...