Outlook: як зберегти скасування зустрічі в календарі як організатора?
У Outlook, як організатор наради, коли ви скасуєте нараду, нараду буде автоматично видалено з календаря. У деяких випадках ви можете зберегти скасовані зустрічі в календарі, щоб зробити позначки. Проте в Outlook немає вбудованих функцій, які могли б впоратися з цією роботою. У цьому посібнику надано два коди VBA для збереження зустрічі як зустрічі під час скасування.
Коди VBA для копіювання скасованої зустрічі як зустрічі
Коди VBA для копіювання скасованої зустрічі як зустрічі
Ось два коди для скасування зустрічі та одночасного копіювання та вставлення її як зустрічі.
Примітка: перш ніж увімкнути код, переконайтеся, що ці два параметри позначено:
Увімкніть Outlook, натисніть філе > Опціїклацніть у вікні параметрів Outlook Центр безпеки та натисніть Налаштування центру довіри, а потім у вікні Центру безпеки та безпеки натисніть Налаштування макросу вкладка, перевірити Увімкнути всі макроси (не рекомендується; може запускатися потенційно небезпечний код) та Застосуйте параметри безпеки макросу до встановлених надбудов варіанти Натисніть OK > OK щоб закрити вікна. перезапуск світогляд.
1. Перейдіть до подання календаря Outlook і виберіть зустріч, яку потрібно скасувати. Натисніть інший + F11 клавіші, щоб увімкнути вікно Microsoft Visual Basic for Applications.
2. клацання Insert > Модулі щоб вставити новий порожній модуль. Потім скопіюйте та вставте в нього код нижче.
Код: Скопіюйте зустріч як зустріч і скасуйте її
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. клацання прогін кнопку або натисніть F5 тепер вибрану зустріч скасовано, а нову зустріч під назвою Скасовано та предмет.
Якщо ви хочете скопіювати та вставити зустріч як зустріч в інший календар, а потім скасувати зустріч, скористайтеся наведеним нижче кодом:
Код: скопіюйте зустріч як зустріч в іншому календарі та скасуйте її
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
Натисніть прогін кнопку або натисніть F5 з’явиться діалогове вікно «Вибір папки», у якому ви зможете вибрати папку календаря, щоб вставити зустріч, а потім натисніть «ОК».
Тепер зустріч скасовано та скопійовано та вставлено як зустріч у вибрану папку календаря.
Найкращі інструменти продуктивності офісу
Kutools for Outlook - Понад 100 потужних функцій, які покращать ваш Outlook
???? Автоматизація електронної пошти: Поза офісом (доступно для POP та IMAP) / Розклад надсилання електронних листів / Автоматична копія/прихована копія за правилами під час надсилання електронної пошти / Автоматичне пересилання (розширені правила) / Автоматично додавати привітання / Автоматично розділяйте електронні листи кількох одержувачів на окремі повідомлення ...
📨 Управління електронною поштою: Легко відкликайте електронні листи / Блокуйте шахрайські електронні листи за темами та іншими / Видалити повторювані електронні листи / розширений пошук / Консолідація папок ...
📁 Вкладення Pro: Пакетне збереження / Пакетне від'єднання / Пакетний компрес / Автозавантаження / Автоматичне від'єднання / Автокомпресія ...
???? Магія інтерфейсу: 😊Більше красивих і класних смайликів / Підвищте продуктивність Outlook за допомогою вкладок / Згорніть Outlook замість того, щоб закривати ...
👍 Дива в один клік: Відповісти всім із вхідними вкладеннями / Антифішингові електронні листи / 🕘Показувати часовий пояс відправника ...
👩🏼🤝👩🏻 Контакти та календар: Пакетне додавання контактів із вибраних електронних листів / Розділіть групу контактів на окремі групи / Видаліть нагадування про день народження ...
більше Особливості 100 Чекайте на ваше дослідження! Натисніть тут, щоб дізнатися більше.