Skip to main content

Outlook: كيفية الاحتفاظ بالاجتماع الملغى في التقويم كمنظم؟

Author: Sun Last Modified: 2025-08-06

في Outlook، كمنظم اجتماع، عند إلغاء الاجتماع، سيتم حذفه تلقائيًا من التقويم. في بعض الحالات، قد ترغب في الاحتفاظ بالاجتماعات الملغاة في التقويم لوضع بعض العلامات. ومع ذلك، لا توجد ميزات مضمنة في Outlook يمكنها التعامل مع هذه المهمة. في هذا البرنامج التعليمي، يتم تقديم شفرتين VBA للحفاظ على الاجتماع كموعد أثناء الإلغاء.

أكواد VBA لنسخ الاجتماع الملغى كموعد


أكواد VBA لنسخ الاجتماع الملغى كموعد

إليك شفرتين لإلغاء الاجتماع ونسخه ولصقه كموعد في نفس الوقت.

ملاحظة: قبل أن تُمكّن الكود، يرجى التأكد من أن هذين الخيارين مفعّلين:

قم بتمكين Outlook، انقر فوق ملف > الخيارات، في نافذة خيارات Outlook، انقر فوق علامة التبويب مركز الأمان، ثم انقر فوق إعدادات مركز الأمان، وبعد ذلك في نافذة مركز الأمان، انقر فوق علامة التبويب إعدادات الماكرو، وحدد تمكين جميع الماكرو (غير مستحسن؛ يمكن تشغيل أكواد خطيرة) و تطبيق إعدادات أمان الماكرو على إضافات مثبتة. انقر فوق موافق > موافق لإغلاق النوافذ. أعد تشغيل Outlook.

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

1. انتقل إلى عرض تقويم Outlook، وحدد الاجتماع الذي تريد إلغاؤه واضغط على مفتاحي Alt + F11 لتمكين نافذة Microsoft Visual Basic for Applications.

2. انقر فوق إدراج > وحدة لإدراج وحدة فارغة جديدة. ثم قم بنسخ ولصق الكود أدناه فيها.

الكود: نسخ الاجتماع كموعد وإلغاؤه

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. انقر فوق زر التشغيل أو اضغط على مفتاح F5 ، الآن تم إلغاء الاجتماع المحدد وتم إنشاء موعد جديد باسم 'ملغي والموضوع'.

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

الآن تم إلغاء الاجتماع ونسخه ولصقه كموعد في مجلد التقويم الذي اخترته.

doc keep meeting in calendar 6

أفضل أدوات إنتاجية أوفيس

أخبار عاجلة: أدوات Kutools لـ Outlook تطلق إصدارًا مجانيًا!

اختبر أدوات Kutools لـ Outlook الجديدة كليًا مع أكثر من100 ميزة مذهلة! انقر لتحميلها الآن!

🤖 Kutools AI : يستخدم تقنية الذكاء الاصطناعي المتقدمة لإدارة البريد الإلكتروني بسهولة، بما في ذلك الرد، التلخيص، التحسين، التوسيع، الترجمة، وإنشاء الرسائل.

📧 أتمتة البريد الإلكتروني: الرد التلقائي (متاح لـ POP و IMAP) / جدولة إرسال البريد / نسخة تلقائية/مخفية عن طريق القواعد عند إرسال البريد / التحويل التلقائي (قاعدة متقدمة) / إضافة التحية تلقائيًا / تقسيم رسائل البريد الإلكتروني متعددة المستلمين تلقائيًا إلى رسائل منفصلة...

📨 إدارة البريد الإلكتروني: استدعاء البريد الإلكتروني / حظر رسائل الاحتيال حسب الموضوع وغيرها / حذف الرسائل المكررة / البحث المتقدم / تنظيم المجلدات...

📁 المرفقات المتقدمة: حفظ دفعة واحدة / فصل دفعة واحدة / ضغط دفعة واحدة / حفظ تلقائي / تفصيل تلقائي / ضغط تلقائي...

🌟 سحر الواجهة: 😊 المزيد من الرموز التعبيرية الجميلة والمميزة / تذكير عند وصول البريد الهام / تصغير Outlook بدل الإغلاق...

👍 ميزات بضغطة واحدة: الرد على الجميع مع المرفقات / الحماية من التصيد الاحتيالي / 🕘 عرض المنطقة الزمنية للمرسل...

👩🏼‍🤝‍👩🏻 جهات الاتصال والتقويم: إضافة جهات الاتصال دفعة واحدة من الرسائل المحددة / تقسيم مجموعة جهات الاتصال إلى مجموعات فردية / إزالة تذكير عيد الميلاد...

استخدم أدوات Kutools بلغتك المفضلة – يدعم الإنجليزية، الإسبانية، الألمانية، الفرنسية، الصينية، وأكثر من40 لغة أخرى!

افتح أدوات Kutools لـ Outlook فوراً بنقرة واحدة. لا تنتظر، حمِّله الآن وحقق كفاءة أعلى!

kutools for outlook features1 kutools for outlook features2