Ir para o conteúdo principal
 

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

Autor: Sol Última modificação: 2024-09-14

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.

doc manter reunião no calendário 1
doc manter reunião no calendário 2

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
doc manter reunião no calendário 3

3. Clique Execute ou pressione F5 tecla, agora a reunião selecionada foi cancelada e um novo compromisso chamado Cancelado e assunto.

doc manter reunião no calendário 4

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.

doc manter reunião no calendário 5

Agora a reunião foi cancelada e copiada e colada como um compromisso na pasta do calendário que você escolher.

doc manter reunião no calendário 6

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!

🤖 Kutools IA : Usa tecnologia avançada de IA para lidar com e-mails sem esforço, incluindo responder, resumir, otimizar, estender, traduzir e redigir e-mails.

📧 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 ...

Desbloqueie instantaneamente o Kutools para Outlook com um único clique—permanentemente gratuito. Não espere, baixe agora e aumente sua eficiência!

kutools para recursos do Outlook1 kutools para recursos do Outlook2