كيف يمكنني البحث عن موضوع موعد في تقويم Outlook واستبداله؟
يُعد البحث والاستبدال في موضوعات المواعيد ضمن تقويم Outlook أداة مفيدة عندما تحتاج إلى استبدال نصوص معينة في عدة مواضيع دفعة واحدة. على سبيل المثال، قد ترغب في استبدال كلمة «نسخة» (Copy) التي تظهر في حقل الموضوع بعد استيراد البيانات إلى Outlook. توفر لك هذه المقالة كود VBA يمكّنك من البحث عن مواضيع مواعيد متعددة واستبدالها بسهولة. لمزيد من التفاصيل، يُرجى الاطلاع أدناه.
البحث عن موضوع الموعد واستبداله باستخدام كود VBA
البحث عن موضوع الموعد واستبداله باستخدام كود VBA
في هذا القسم، يمكنك البحث عن موضوع الموعد واستبداله باستخدام كود VBA على النحو التالي.
1. أولًا، اضبط إعدادات ماكرو في Outlook على المستوى المنخفض.
1) في Outlook 2010 و2013، انقر فوق «ملف» > «خيارات». ثم في مربع حوار «خيارات Outlook»، اختر «مركز الثقة» من الشريط الجانبي الأيسر، وانقر بعد ذلك على زر «إعدادات مركز الثقة».

في مربع حوار «مركز الثقة»، انقر فوق «إعدادات الماكرو» في الشريط الجانبي الأيسر، ثم اختر خيار «تمكين جميع الماكرو» ضمن قسم «إعدادات الماكرو»، وبعد ذلك انقر فوق زر «موافق». راجع لقطة الشاشة:

2) في Outlook 2007، يُرجى النقر فوق «أدوات» > «مركز الثقة». ثم في مربع حوار «مركز الثقة»، انقر فوق «إعدادات الماكرو» في الشريط الجانبي الأيسر، وحدد خيار «عدم إجراء فحص أمان للماكرو»، ثم انقر فوق زر «موافق».

2. اضغط على مفتاحَي «Alt» + "F11" لفتح نافذة «مايكروسوفت Visual Basic for Applications».
3. في نافذة «مايكروسوفت Visual Basic for Applications»، انقر مرتين لتوسيع "Project1" > «كائنات Microsoft Outlook» > «ThisOutlookSession» وفتح محرر VBA. راجع لقطة الشاشة:

4. انسخ والصق كود VBA التالي في محرر VBA، ثم اضغط على مفتاح "F5" لتشغيله.
VBA: البحث والاستبدال موضوع الموعد
Sub FindReplaceAppointment()
Dim oApp As Outlook.Application
Dim oCalFolder As Outlook.MAPIFolder
Dim oAppt As Outlook.AppointmentItem
Dim sOldText As String
Dim sNewText As String
Dim iCalChangedCount As Integer
Set oApp = Outlook.Application
MsgBox ("This script will perform a find/replace in the subject line of all appointments in a specified calendar.")
sOldText = InputBox("What is the text string that you would like to replace?")
sNewText = InputBox("With what would you like to replace it?")
' Check to be sure a Calendar folder was selected
Do
If Not (oCalFolder Is Nothing) Then
If (oCalFolder.DefaultItemType = olAppointmentItem) Then Exit Do
End If
MsgBox ("Please select a calendar folder from the following list.")
Set oCalFolder = Application.Session.PickFolder
On Error GoTo ErrHandler:
Loop Until oCalFolder.DefaultItemType = olAppointmentItem
' Loop through appointments in calendar, change text where necessary, keep count
iCalChangedCount = 0
For Each oAppt In oCalFolder.Items
If InStr(oAppt.Subject, sOldText) <> 0 Then
Debug.Print "Changed: " & oAppt.Subject & " - " & oAppt.Start
oAppt.Subject = Replace(oAppt.Subject, sOldText, sNewText)
oAppt.Save
iCalChangedCount = iCalChangedCount + 1
End If
Next
' Display results and clear table
MsgBox (iCalChangedCount & " appointments had text in their subjects changed from '" & sOldText & "' to '" & sNewText & "'.")
Set oAppt = Nothing
Set oCalFolder = Nothing
Exit Sub
ErrHandler:
MsgBox ("Macro terminated.")
End Sub
5. بعد تشغيل الكود، يظهر مربع حوار «مايكروسوفت Outlook»—انقر فوق زر «موافق».

6. في مربع الحوار الثاني لـ «مايكروسوفت Outlook»، أدخل النص الذي تريد استبداله، ثم انقر على زر «موافق».

7. في مربع الحوار الثالث من «مايكروسوفت Outlook»، أدخل النص الذي ترغب في استخدامه كبديل، ثم انقر فوق «موافق».

ملاحظة: إذا كنت ترغب فقط في إزالة جميع كلمات «نسخة» (Copy) من حقل الموضوع في التقويم المحدد، فاترك هذا الحقل فارغًا.
8. انقر فوق زر «موافق» في مربع الحوار أدناه.

9. في مربع حوار «تحديد مجلد»، اختر تقويمك من حساب البريد الإلكتروني المحدد، ثم انقر فوق زر «موافق». راجع لقطة الشاشة:

10. بعد ذلك، سيظهر مربع حوار يُبلغك بنجاح عملية الاستبدال. يُرجى النقر على زر «موافق».

11. وبذلك، تكون جميع النصوص في مواضيع المواعيد الخاصة بالتقويم المحدد قد استُبدلت بالمحتوى الجديد.
أفضل أدوات إنتاجية Office
جرِّب Kutools لـ Outlook الجديد كليًّا مع 100+ ميزة رائعة!انقر للتنزيل الآن!
📧أتمتة البريد الإلكتروني: الرد التلقائي (متوفر لبروتوكولي POP وIMAP) / جدولة إرسال رسائل البريد الإلكتروني / نسخة تلقائية/مخفية وفق القواعد عند إرسال البريد الإلكتروني / التحويل التلقائي (قاعدة متقدمة) / إضافة التحيّة تلقائيًّا / تقسيم رسائل البريد الإلكتروني ذات المستلمين المتعددين تلقائيًّا إلى رسائل فردية...
📨إدارة البريد الإلكتروني: استدعاء البريد الإلكتروني / حظر رسائل الاحتيال حسب العناوين وغيرها / حذف الرسائل المكررة / البحث المتقدم / تنظيم المجلدات...
📁المرفقات الاحترافية: حفظ دفعة واحدة / فصل دفعة واحدة / ضغط دفعة واحدة / حفظ تلقائي / تفصيل تلقائي / ضغط تلقائي...
🌟سحر الواجهة: 😊إيموجيات أكثر جمالًا وروعة / إشعارك عند وصول رسائل بريد إلكتروني مهمة / تصغير Outlook بدلًا من إغلاقه...
👍عجائب النقرة الواحدة: الرد على الجميع مع المرفقات / الحماية من رسائل التصيد الاحتيالي / 🕘عرض منطقة الوقت الحالي للمرسل...
👩🏼🤝👩🏻جهات الاتصال والتقويم: إضافة جهات اتصال دفعةً واحدة من رسائل البريد الإلكتروني المحددة / تقسيم مجموعة جهات الاتصال إلى مجموعات فردية / إزالة تذكير عيد الميلاد...
استخدم Kutools باللغة التي تفضلها – يدعم الإنجليزية، الإسبانية، الألمانية، الفرنسية، الصينية، وأكثر من 40 لغة أخرى!
افتح Kutools لـ Outlook بنقرة واحدة فورًا! لا تنتظر، نزِّله الآن وحسِّن كفاءتك!


🚀 التنزيل بنقرة واحدة — احصل على جميع إضافات Office
موصى به بشدة: Kutools for Office (5 في 1)
نقرة واحدة لتنزيلخمسة برامج تثبيتدفعة واحدة —Kutools لـ Excel وOutlook وWord وPowerPointوOffice Tab Pro.انقر للتنزيل الآن!
- ✅سهولة النقرة الواحدة: نزِّل جميع حزم الإعداد الخمس دفعة واحدة!
- 🚀جاهز لأي مهمة في Office: ثبِّت الإضافات التي تحتاجها، متى احتجتَ إليها.
- 🧰متضمَّن: Kutools لـ Excel / Kutools لـ Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint