Kako automatski spojiti sve obveze i sastanke iz svih kalendara s programom Outlook VBA

Podijeli sada:

Ako želite uvijek spojiti sve obveze i sastanke iz svih kalendara u jedan kalendar za praktičnu provjeru, možete primijeniti metodu predstavljenu u ovom članku.

Možda imate mnogo računa e-pošte konfiguriranih u Outlooku. U ovom slučaju morate imati mnogo kalendara u svom Outlooku. Stoga svaki put kada želite provjeriti koliko danas ima termina, morate se prebaciti na sve kalendare. Bit će malo problematično. Dakle, zašto ih ne spojite u jedan kalendar? U nastavku ćemo izložiti dio VBA koda koji ga može s lakoćom realizirati.

Spojite sve obveze i sastanke iz svih kalendara s programom Outlook VBA

Automatsko spajanje svih obveza i sastanaka iz svih kalendara

  1. Na samom početku pokrenite svoju Outlook aplikaciju.
  2. Nakon što uđete u glavni prozor programa Outlook, pritisnite tipke "Alt + F11".
  3. Zatim ćete ući u prozor "Microsoft Visual Basic za aplikacije".
  4. Zatim trebate pronaći i otvoriti projekt “ThisOutlookSession”.
  5. Zatim biste trebali kopirati i zalijepiti sljedeće VBA kodove u ovaj prozor projekta.
'Here we take two calendars as an example - "Calendar A" & "Calendar B"
'You can add more as per your needs
Dim WithEvents objACalendarItems As Outlook.Items
Dim WithEvents objBCalendarItems As Outlook.Items
Dim objDefaultCalendar As Outlook.Folder
 
Private Sub Application_Startup()
    Set objACalendarItems = Application.Session.folders("File A").folders("Calendar").Items
    Set objBCalendarItems = Application.Session.folders("File B").folders("Calendar").Items

    'Here we merge into the default calendar
    Set objDefaultCalendar = Application.Session.GetDefaultFolder(olFolderCalendar)
End Sub
 
Private Sub objACalendarItems_ItemAdd(ByVal Item As Object)
    Call CopyToDefaultCalendar(Item)
End Sub

Private Sub objBCalendarItems_ItemAdd(ByVal Item As Object)
    Call CopyToDefaultCalendar(Item)
End Sub

Private Sub CopyToDefaultCalendar(ByVal objItem As Object)
    Dim objCopiedAppointment As Outlook.AppointmentItem
    Dim objMoviedAppointment As Outlook.AppointmentItem
    Dim strPSTFileName As String
 
    Set objCopiedAppointment = objItem.Copy
    Set objMoviedAppointment = objCopiedAppointment.Move(objDefaultCalendar)
 
    strPSTFileName = objItem.parent.parent.Name
 
    'Tag the source of the copied appointments
    objMoviedAppointment.Categories = "From " & strPSTFileName
    objMoviedAppointment.Save
    'If want to delete it from the original calendar, add the following line:
    'objItem.Delete
End Sub

VBA kod - spajanje svih obveza i sastanaka iz svih kalendara

  1. Nakon toga potrebno je trenutnom makrou dodijeliti digitalni certifikat.
  2. Kasnije idite na "postavke makronaredbi" da biste omogućili digitalno potpisane makronaredbe.
  3. Na kraju možete ponovno pokrenuti Outlook program da biste aktivirali novi makro.
  4. Od sada, svaki put kada se bilo koji novi termin ili sastanak doda u kalendare koji nisu zadani, automatski će se kopirati u zadani kalendar, kao na sljedećoj snimci zaslona:Spoji kalendare

Uklonite zakašnjele stavke iz kalendara na vrijeme

Kao što znamo, Outlook je skloniji raznim pogreškama kada poštanski sandučić postaje sve veći i veći. Stoga se preporuča na vrijeme ukloniti beskorisne stvari iz poštanskog sandučića, kao što su zakašnjeli termini i sastanci. U međuvremenu, bolje je ako u blizini držite moćan alat za popravak, kao što je DataNumen Outlook Repair. To može popraviti Outlook pitanja bez da se oznojite.

Uvod za autora:

Shirley Zhang stručnjakinja je za oporavak podataka u DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući sql oporavak i softverske proizvode za popravak Outlooka. Za više informacija posjetite www.datanumen.com

Podijeli sada:

Komentari su zatvoreni.