Preskoči na glavno vsebino

Kako samodejno razširiti vse mape ob zagonu Outlooka?

Običajno, ko razširite ali strnete mapo v Outlookovem podoknu za krmarjenje in nato zaprete program, mapa po ponovnem odpiranju Outlooka ohrani svoje razširjeno ali strnjeno stanje. Kaj pa, če želite, da se vse mape samodejno razširijo vsakič, ko zaženete Outlook? Ta članek ponuja rešitev VBA za doseganje prav tega.

Samodejno razširi vse mape ob zagonu Outlooka z VBA

Zavihek Office – omogočite urejanje in brskanje z zavihki v Microsoft Officeu, kar olajša delo
Kutools za Outlook – izboljšajte Outlook s 100+ naprednimi funkcijami za vrhunsko učinkovitost
Izboljšajte svoj Outlook 2021 - 2010 ali Outlook 365 s temi naprednimi funkcijami. Uživajte v obsežnem 60-dnevnem brezplačnem preizkusu in izboljšajte svojo e-poštno izkušnjo!

puščica modri desni mehurček Samodejno razširi vse mape ob zagonu Outlooka z VBA

Ta vodnik bo pokazal, kako uporabiti skript VBA za samodejno razširitev vseh map v podoknu za krmarjenje vsakič, ko zaženete Outlook. Sledite tem korakom za implementacijo skripta VBA:

  1. Pritisnite Alt + F11 tipke hkrati, da odprete Microsoft Visual Basic za aplikacije okno.
  2. Razširi Projekt 1 in Predmeti Microsoft Outlook v Projekt podoknu dvokliknite, da odprete Ta OutlookSession in vanj prilepite spodnjo kodo VBA.

    VBA: samodejno razširi vse mape v Outlooku

    Public WithEvents GEx As Explorer
    Public GFlag As Boolean
    Private Sub Application_Startup()
      'Update by ExtendOffice 2023/12/08
      Set GEx = Application.ActiveExplorer
      GFlag = False
    End Sub
    
    Private Sub GEx_SelectionChange()
      If GFlag = False Then
        ExpandAllFolders
      End If
      GFlag = True
    End Sub
    
    Public Sub ExpandAllFolders()
      Dim xNameSpace As Outlook.NameSpace
      Dim xFlds As Outlook.Folders
      Dim xCurrFld As Outlook.MAPIFolder
      Dim xFld As Outlook.MAPIFolder
      Dim xExpandDefaultStoreOnly As Boolean
      Dim xModule As NavigationModule
      On Error Resume Next
      xExpandDefaultStoreOnly = False
      Set xNameSpace = Application.Session
      Set xModule = Application.ActiveExplorer.NavigationPane.CurrentModule
      Set xCurrFld = Application.ActiveExplorer.CurrentFolder
      If xExpandDefaultStoreOnly = True Then
        Set xFld = xNameSpace.GetDefaultFolder(olFolderInbox)
        Set xFld = xFld.Parent
        Set xFlds = xFld.Folders
        LoopFolders xFlds, True
      Else
        LoopFolders xNameSpace.Folders, True
        LoopFolders xNameSpace.Folders, False
      End If
      DoEvents
      Set Application.ActiveExplorer.NavigationPane.CurrentModule = xModule
      Set Application.ActiveExplorer.CurrentFolder = xCurrFld
      Set xNameSpace = Nothing
      Set xModule = Nothing
      Set xCurrFld = Nothing
    End Sub
    
    Private Sub LoopFolders(Flds As Outlook.Folders, ByVal All As Boolean)
      Dim xFld As Outlook.MAPIFolder
      On Error Resume Next
      For Each xFld In Flds
        Select Case All
          Case True
            If xFld.DefaultItemType = olMailItem Then
              Set Application.ActiveExplorer.CurrentFolder = xFld
              DoEvents
              If xFld.Folders.Count > 0 Then
                LoopFolders xFld.Folders, All
              End If
            End If
          Case False
            Set Application.ActiveExplorer.CurrentFolder = xFld
            DoEvents
            If xFld.Folders.Count > 0 Then
              LoopFolders xFld.Folders, All
            End If
        End Select
      Next
    End Sub
  3. Shranite kodo in zaprite Microsoft Visual Basic za aplikacije okno.

Od zdaj naprej bodo pri ponovnem zagonu Outlooka vse mape samodejno razširjene v Outlooku.

Opombe:

  • Ta VBA ne more odpreti strnjenih iskalnih map ob ponovnem zagonu Outlooka.
  • Da bi zagotovili pravilno delovanje skripta VBA, je bistveno, da prilagodite nastavitve makra v Outlooku. Prosim, pojdite na file > možnosti > Trust Center > Trust Center Nastavitve > Nastavitve makrovin izberite Omogoči vse makre možnost. Ta nastavitev omogoča izvajanje skripta VBA brez kakršnih koli omejitev.

puščica modri desni mehurček Povezani članki


Najboljša pisarniška orodja za produktivnost

Kutools za Outlook - Več kot 100 zmogljivih funkcij za nadgradnjo vašega Outlooka

📧 Avtomatizacija e-pošte: Odsoten (na voljo za POP in IMAP)  /  Načrtujte pošiljanje e-pošte  /  Samodejna CC/BCC po pravilih pri pošiljanju e-pošte  /  Samodejno naprej (napredna pravila)   /  Samodejno dodaj pozdrav   /  E-poštna sporočila več prejemnikov samodejno razdeli na posamezna sporočila ...

📨 Email upravljanje: Enostaven priklic e-pošte  /  Blokiraj prevarantska e-poštna sporočila glede na teme in druge  /  Izbriši podvojena e-poštna sporočila  /  napredno iskanje  /  Združite mape ...

📁 Priloge ProShrani paket  /  Batch Detach  /  Paketno stiskanje  /  Samodejno shranite   /  Samodejno loči  /  Samodejno stiskanje ...

🌟 Vmesnik Magic: 😊Več lepih in kul emojijev   /  Povečajte Outlookovo produktivnost s pogledi z zavihki  /  Minimizirajte Outlook, namesto da bi ga zaprli ...

???? Čudeži z enim klikom: Odgovori vsem z dohodnimi prilogami  /   E-poštna sporočila proti lažnemu predstavljanju  /  🕘Pokaži pošiljateljev časovni pas ...

👩🏼‍🤝‍👩🏻 Stiki in koledar: Paketno dodajanje stikov iz izbranih e-poštnih sporočil  /  Razdelite skupino stikov na posamezne skupine  /  Odstranite opomnike za rojstni dan ...

Over 100 Lastnosti Čakajte na svoje raziskovanje! Kliknite tukaj, če želite odkriti več.

 

 

Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Just tried this on Microsoft® Outlook® for Microsoft 365 MSO (Version 2310 Build 16.0.16924.20054) 64-bit and it was unsuccessful
This comment was minimized by the moderator on the site
Hi there,

Please go to File > Options > Trust Center > Trust Center Settings > Macro Settings. And select the Enable all macros option. After making this change, restart Outlook, the macro should then be operational.
This comment was minimized by the moderator on the site
Hi guys,

does this code also work for Microsoft outlook 365?
I have tried and tried again, but I get no results.
Thanks.
This comment was minimized by the moderator on the site
I couldn't get this macro to work either.
This comment was minimized by the moderator on the site
Hi there,
We've updated the code, please try it again. 🙂
Amanda
This comment was minimized by the moderator on the site
I cannot get this macro to work at all.  All folders in the Folder pane are not expanded at all.  I am using Outlook 2021.  Is there some instruction I missed?
This comment was minimized by the moderator on the site
Hi there,
We've updated the code, please try it again. 🙂
Amanda
This comment was minimized by the moderator on the site
Thank you so much.. It solved my problem. :)
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations