Outlook: ¿Cómo mantener la reunión cancelada en el calendario como organizador?
En Outlook, como Organizador de la reunión, al cancelar una reunión, esta se elimina automáticamente del calendario. En algunos casos, puede que desee conservar las reuniones canceladas en el calendario para añadirles alguna anotación. Sin embargo, Outlook no dispone de funciones integradas para realizar esta tarea. En este tutorial se proporcionan dos códigos VBA para conservar la reunión como una cita al cancelarla.
Códigos VBA para copiar la reunión cancelada como cita
Códigos VBA para copiar la reunión cancelada como cita
A continuación, se incluyen dos códigos que permiten cancelar la reunión y, al mismo tiempo, copiarla y pegarla como una cita.
Nota: antes de habilitar el código, asegúrese de marcar estas dos opciones:
Inicie Outlook y haga clic en Archivo > Opciones. En la ventana **Opciones de Outlook**, haga clic en la pestaña Centro de confianza y, a continuación, en Configuración del Centro de confianza. En la ventana **Centro de confianza**, seleccione la pestaña Configuración de macros, marque las opciones Habilitar todas las macros (no recomendado; puede ejecutar código potencialmente peligroso) y Aplicar la configuración de seguridad de macros a los complementos instalados. Haga clic en Aceptar > Aceptar para cerrar esta ventana. Reinicie Outlook.


1. Vaya rápidamente a la vista del calendario de Outlook y seleccione la reunión que desea cancelar. Pulse las teclas Alt+F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haga clic en Insertar > Módulo para insertar un nuevo módulo en blanco. A continuación, copie y pegue el siguiente código en él.
Código: Copiar la reunión como cita y cancelarla
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. Haga clic en el botón Ejecutar o pulse la tecla F5. Ahora, la reunión seleccionada se ha cancelado y se ha creado una cita denominada «Cancelada: asunto».

Si desea copiar y pegar la reunión como una cita en otro calendario y luego cancelar la reunión, utilice el siguiente código:
Código: Copiar la reunión como cita en otro calendario y cancelarla
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
Haga clic en el botón Ejecutar o pulse la tecla F5. Aparecerá un cuadro de diálogo «Seleccionar carpeta» que le permitirá elegir la carpeta del calendario donde desea pegar la cita. Haga clic en Aceptar.

Ahora la reunión se ha cancelado y se ha copiado y pegado como una cita en la carpeta del calendario que seleccionó.

Las mejores herramientas de productividad para Office
¡Descubra el nuevo Kutools para Outlook con 100+ funciones increíbles!¡Haga clic para descargar ahora!
📧Automatización de correo electrónico: Respuesta automática (disponible para POP e IMAP) / Programar el envío de correos electrónicos / CC/BCC automático según reglas al enviar correos / Reenvío automático (regla avanzada) / Añadir saludo automáticamente / Dividir automáticamente los correos con múltiples destinatarios en mensajes individuales...
📨Gestión de correo electrónico: Recupera tus correos electrónicos / Bloquea correos fraudulentos por asunto y otros criterios / Elimina correos electrónicos duplicados / Búsqueda avanzada / Organiza tus carpetas…
📁Archivos adjuntos Pro: Guardar en lote / Desvincular en lote / Comprimir en lote / Guardar automáticamente / Desconectar automáticamente / Auto comprimir...
🌟Magia de la interfaz: 😊Más emojis bonitos y modernos / Le avisa cuando llegan correos importantes / Minimiza Outlook en lugar de cerrarlo…
👍Maravillas con un solo clic: Responder a Todos con Adjuntos / Correos electrónicos antiphishing / 🕘 Mostrar zona horaria: hora actual del remitente...
👩🏼🤝👩🏻Contactos y calendario: Crear contactos en lote a partir de correos seleccionados / Dividir un grupo de contactos en grupos individuales / Eliminar recordatorio de cumpleaños...
Utilice Kutools en su idioma preferido: compatible con inglés, español, alemán, francés, chino y más de 40 idiomas adicionales.


🚀 Descarga con un solo clic — Obtenga todos los complementos de Office
Muy recomendado: Kutools for Office (5 en 1)
Un solo clic para descargar cinco instaladoresa la vez —Kutools para Excel, Outlook, Word, PowerPointy Office Tab Pro.¡Haga clic para descargar ahora!
- ✅Comodidad con un solo clic: Descargue los cinco paquetes de instalación de una sola vez.
- 🚀Listo para cualquier tarea de Office: Instale los complementos que necesite, justo cuando los necesite.
- 🧰Incluido: Kutools para Excel / Kutools para Outlook / Kutools para Word / Office Tab Pro / Kutools for PowerPoint