Skip to main content

Outlook: Come mantenere la riunione cancellata nel calendario come organizzatore?

Author: Sun Last Modified: 2025-08-06

In Outlook, come organizzatore di una riunione, quando annulli la riunione, questa verrà automaticamente eliminata dal calendario. In alcuni casi, potresti voler mantenere le riunioni annullate nel calendario per fare alcune annotazioni. Tuttavia, non ci sono funzionalità integrate in Outlook che possono gestire questo compito. In questo tutorial, vengono forniti due codici VBA per mantenere la riunione come appuntamento mentre la si annulla.

Codici VBA per copiare la riunione annullata come appuntamento


Codici VBA per copiare la riunione annullata come appuntamento

Ecco due codici per annullare la riunione e copiarla e incollarla come appuntamento contemporaneamente.

Nota: prima di abilitare il codice, assicurati che queste due opzioni siano selezionate:

Abilita Outlook, clicca su File > Opzioni, nella finestra Opzioni di Outlook, clicca sulla scheda Centro di protezione, e poi clicca su Impostazioni del Centro di protezione, quindi nella finestra Centro di protezione, clicca sulla scheda Impostazioni macro, seleziona Abilita tutte le macro (non raccomandato; codice potenzialmente pericoloso può essere eseguito) e Applica impostazioni di sicurezza delle macro ai componenti aggiuntivi installati. Clicca OK > OK per chiudere le finestre. Riavvia Outlook.

doc keep meeting in calendar 1
doc keep meeting in calendar 2

1. Passa alla vista Calendario di Outlook e seleziona la riunione che desideri annullare. Premi i tasti Alt + F11 per abilitare la finestra Microsoft Visual Basic for Applications.

2. Clicca su Inserisci > Modulo per inserire un nuovo modulo vuoto. Poi copia e incolla il codice sottostante.

Codice: Copia la riunione come appuntamento e annullala

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 keep meeting in calendar 3

3. Clicca sul pulsante Esegui o premi il tasto F5 , ora la riunione selezionata è stata annullata e un nuovo appuntamento denominato Annullato & oggetto è stato creato.

doc keep meeting in calendar 4

Se desideri copiare e incollare la riunione come appuntamento in un altro calendario e poi annullare la riunione, utilizza il seguente codice:

Codice: Copia la riunione come appuntamento in un altro calendario e annullala

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

Clicca sul pulsante Esegui o premi il tasto F5 , apparirà una finestra di dialogo Seleziona Cartella per scegliere una cartella del calendario in cui incollare l'appuntamento, poi clicca OK.

doc keep meeting in calendar 5

Ora la riunione è stata annullata e copiata e incollata come appuntamento nella cartella del calendario che hai scelto.

doc keep meeting in calendar 6

I migliori strumenti per la produttività in Office

Ultime novità: Kutools per Outlook lancia la versione gratuita!

Scopri il nuovo Kutools per Outlook con oltre100 funzionalità incredibili! Clicca per scaricare ora!

🤖 Kutools AI : Sfrutta una tecnologia AI avanzata per gestire le email senza sforzo, tra cui rispondere, riassumere, ottimizzare, estendere, tradurre e scrivere email.

📧 Automazione email: Risposta automatica (disponibile per POP e IMAP) / Programmazione invio email / CC/BCC automatico tramite regola durante l’invio dell’email / Inoltro automatico (Regola avanzata) / Aggiungi saluto automaticamente / Suddivisione automatica delle email con più destinatari in email individuali ...

📨 Gestione email: Richiama Email / Blocca email di truffa tramite Oggetto e altro / Elimina Email duplicate / Ricerca Avanzata / Organizza cartelle ...

📁 Allegati Pro: Salvataggio in batch / Distacco in batch / Compressione in batch / Salvataggio automatico / Distacca automaticamente / Auto Comprimi ...

🌟 Magia dell’interfaccia: 😊Più emoji belle e simpatiche / Ti avvisa quando arrivano email importanti / Minimizza Outlook invece di chiuderlo ...

👍 Meraviglie con un clic: Rispondi a Tutti con Allegati / Email Anti-phishing / 🕘Mostra il fuso orario del mittente ...

👩🏼‍🤝‍👩🏻 Contatti e Calendario: Aggiunta massiva dei contatti dalle email selezionate / Dividi un Gruppo di Contatti in gruppi individuali / Rimuovi promemoria di compleanno ...

Usa Kutools nella lingua che preferisci: supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

Sblocca istantaneamente Kutools per Outlook con un solo clic. Non aspettare, scarica ora e aumenta la tua efficienza!

kutools for outlook features1 kutools for outlook features2