När du har schemalagt ett återkommande möte i din Outlook-kalender, om du vill ta bort påminnelserna om händelser som inträffar på helger, kan du använda metoden som introduceras i den här artikeln.
Har du några återkommande möten i din Outlook-kalender? Du har till exempel schemalagt ett återkommande möte som sker var fjärde dag. I det här fallet skulle vissa händelser av detta möte infalla på helger. Vid det här laget kan påminnelserna om dessa helghändelser vara värdelösa för dig. Därför vill du ta bort deras påminnelser. Med fokus på detta krav kommer vi här att introducera ett effektivt och bekvämt sätt.

Ta bort påminnelserna för helgens händelser av ett återkommande möte
- Starta Outlook-applikationen redan från början.
- Vänd sedan till Outlook VBA-redigeraren via "Alt + F11" -tangenter.
- Lägg sedan in följande VBA-kod i ett projekt eller en modul.
Sub RemoveRemindersOfWeekendOccurrencesOfRecurringAppointments()
Dim objAppointment As Outlook.AppointmentItem
Dim objCalendar As Outlook.Folder
Dim objCalendarItems As Outlook.Items
Dim objRecurrencePattern As RecurrencePattern
Dim dStartDate, dEndDate As Date
Dim dCurrentDate, dActualTime As Date
Dim strFilter As String
Dim objFoundAppointment As Outlook.AppointmentItem
Dim objOccurrence As Outlook.AppointmentItem
Set objAppointment = Application.ActiveExplorer.Selection.Item(1)
Set objCalendar = Application.Session.GetDefaultFolder(olFolderCalendar)
Set objCalendarItems = objCalendar.Items
objCalendarItems.Sort "[Start]", False
objCalendarItems.IncludeRecurrences = True
Set objRecurrencePattern = objAppointment.GetRecurrencePattern
dStartDate = Format(objRecurrencePattern.PatternStartDate, "MM/DD/YYYY")
dEndDate = Format(objRecurrencePattern.PatternEndDate, "MM/DD/YYYY")
dCurrentDate = dStartDate
Do Until dCurrentDate >= dEndDate
If Weekday(dCurrentDate) = vbSaturday Or Weekday(dCurrentDate) = vbSunday Then
dActualTime = dCurrentDate & " " & objRecurrencePattern.StartTime
dActualTime = Format(dActualTime, "ddddd hh:mm:ss AMPM")
strFilter = "[Start] <= " & Chr(34) & dCurrentDate & " 11:59 PM" & Chr(34) & " AND [End] > " & Chr(34) & dCurrentDate & " 00:00 AM" & Chr(34) & " AND [Subject] = " & Chr(34) & objAppointment.Subject & Chr(34)
Set objFoundAppointment = objCalendarItems.Find(strFilter)
If Not objFoundAppointment Is Nothing Then
'Get the occurrence on weekends
Set objOccurrence = objRecurrencePattern.GetOccurrence(dActualTime)
'Remove the reminders
With objOccurrence
.Subject = "(C)" & objAppointment.Subject
.ReminderSet = False
.Save
End With
End If
End If
dCurrentDate = DateAdd("d", 1, dCurrentDate)
Loop
End Sub
- Efter det kan du stänga fönstret.
- Följ sedan stegen som visas i artikeln "Hur du kör VBA-kod i din Outlook”För att lägga till detta makro i snabbåtkomstverktygsfältet.
- Så småningom, kör detta makro nu.
- Först och främst, välj en förekomst av det återkommande mötet.
- Klicka sedan på makroknappen i verktygsfältet Snabbåtkomst.
- När makrot har slutförts kommer påminnelserna om de händelser som är schemalagda på helger att tas bort. Ämnena kommer också att ändras på basis av koden, som följande skärmdump:
Skydda Outlook från korruption
Liksom andra vanliga filer, såsom Word-dokument, Excel-kalkylblad, är Outlook-datafilen sårbar. Därför bör du vidta några kraftfulla försiktighetsåtgärder för att minska risken för korruption i Outlook. Till exempel måste du fortsätta med en vanlig säkerhetskopiering av PST-data. För att förhindra dataförlust bör vi dessutom ha ett Outlook-reparationsverktyg i närheten, som t.ex. DataNumen Outlook Repair. Det kan reparera Outlook problem utan problem.
Författarintroduktion:
Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive sql korruption och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com


