Перейти до основного матеріалу

Outlook: як зберегти скасування зустрічі в календарі як організатора?

У Outlook, як організатор наради, коли ви скасуєте нараду, нараду буде автоматично видалено з календаря. У деяких випадках ви можете зберегти скасовані зустрічі в календарі, щоб зробити позначки. Проте в Outlook немає вбудованих функцій, які могли б впоратися з цією роботою. У цьому посібнику надано два коди VBA для збереження зустрічі як зустрічі під час скасування.

Коди VBA для копіювання скасованої зустрічі як зустрічі


Коди VBA для копіювання скасованої зустрічі як зустрічі

Автор: нд Остання зміна: 2022-12-22

Ось два коди для скасування зустрічі та одночасного копіювання та вставлення її як зустрічі.

Примітка: перш ніж увімкнути код, переконайтеся, що ці два параметри позначено:

Увімкніть Outlook, натисніть філе > Опціїклацніть у вікні параметрів Outlook Центр безпеки та натисніть Налаштування центру довіри, а потім у вікні Центру безпеки та безпеки натисніть Налаштування макросу вкладка, перевірити Увімкнути всі макроси (не рекомендується; може запускатися потенційно небезпечний код) та Застосуйте параметри безпеки макросу до встановлених надбудов варіанти Натисніть OK > OK щоб закрити вікна. перезапуск світогляд.

doc зберегти зустріч у календарі 1

doc зберегти зустріч у календарі 2

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

doc зберегти зустріч у календарі 3

3. клацання прогін кнопку або натисніть F5 тепер вибрану зустріч скасовано, а нову зустріч під назвою Скасовано та предмет.

doc зберегти зустріч у календарі 4

Якщо ви хочете скопіювати та вставити зустріч як зустріч в інший календар, а потім скасувати зустріч, скористайтеся наведеним нижче кодом:

Код: скопіюйте зустріч як зустріч в іншому календарі та скасуйте її

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 з’явиться діалогове вікно «Вибір папки», у якому ви зможете вибрати папку календаря, щоб вставити зустріч, а потім натисніть «ОК».

doc зберегти зустріч у календарі 5

Тепер зустріч скасовано та скопійовано та вставлено як зустріч у вибрану папку календаря.

doc зберегти зустріч у календарі 6


Найкращі інструменти продуктивності офісу

Останні новини: запускається Kutools для Outlook Безкоштовна версія!

Спробуйте нові інструменти Kutools для Outlook БЕЗКОШТОВНА версія з понад 70 неймовірними функціями, якими ви можете користуватися НАЗАВЖДИ! Клацніть, щоб завантажити зараз!

🤖 Kutools AI : Миттєві професійні електронні листи з магією штучного інтелекту – геніальні відповіді одним клацанням, ідеальний тон, багатомовна майстерність. Трансформуйте електронну пошту без зусиль! ...

???? Автоматизація електронної пошти: Автовідповідь (доступно для POP та IMAP)  /  Розклад надсилання електронних листів  /  Автоматична копія/прихована копія за правилами під час надсилання електронної пошти  /  Автоматичне пересилання (розширені правила)   /  Автоматично додавати привітання   /  Автоматично розділяйте електронні листи кількох одержувачів на окремі повідомлення ...

📨 Управління електронною поштою: Відкликати електронні листи  /  Блокуйте шахрайські електронні листи за темами та іншими  /  Видалити повторювані електронні листи  /  розширений пошук  /  Консолідація папок ...

📁 Вкладення ProПакетне збереження  /  Пакетне від'єднання  /  Пакетний компрес  /  Автозавантаження   /  Автоматичне від'єднання  /  Автокомпресія ...

???? Магія інтерфейсу: 😊Більше красивих і класних смайликів   /  Нагадувати вам, коли надходять важливі листи  /  Згорніть Outlook замість того, щоб закривати ...

👍 Дива в один клік: Відповісти всім із вхідними вкладеннями  /   Антифішингові електронні листи  /  🕘Показувати часовий пояс відправника ...

👩🏼‍🤝‍👩🏻 Контакти та календар: Пакетне додавання контактів із вибраних електронних листів  /  Розділіть групу контактів на окремі групи  /  Видаліть нагадування про день народження ...

Миттєво розблокуйте Kutools для Outlook одним клацанням миші—постійно вільний. не чекай, завантажте зараз і підвищте ефективність!

kutools для функцій Outlook1 kutools для функцій Outlook2
 

 

 

Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations