Gå til hovedindhold

Hvordan eksporteres Outlook-meddelelsestællinger til Excel-projektmappe?

Normalt kan du eksportere Outlook-beskederne til Excel-fil ved hjælp af funktionen Import / Export hurtigt og nemt. Men har du nogensinde prøvet at tælle elementerne i alle mapper på din specifikke e-mail-konto og eksportere tælleresultaterne til Excel-projektmappe?

Eksporter Outlook-meddelelsestællinger til Excel-projektmappe med VBA-kode


Eksporter Outlook-meddelelsestællinger til Excel-projektmappe med VBA-kode

Følgende VBA-kode kan hjælpe dig med at eksportere optællingsresultaterne fra alle mapper i en bestemt e-mail-konto til Excel-projektmappe, gør som dette:

1. Hold nede ALT + F11 nøgler til at åbne Microsoft Visual Basic til applikationer vindue.

2. Klik indsatte > Moduler, og indsæt følgende kode i Moduler Vindue.

VBA-kode: Eksporter Outlook-poster tæller til Excel-projektmappe:

Sub Export_CountOfItems_InEachFolder_toExcel()
    Dim xSourceFolder As Outlook.Folder, xSubFolder As Outlook.Folder
   Dim xFilePath As String
    Dim xExcelApp As Excel.Application
    Dim xWb As Excel.Workbook
    Dim xWs As Excel.Worksheet
    On Error Resume Next
    Set xExcelApp = New Excel.Application
    Set xWb = xExcelApp.Workbooks.Add
    Set xWs = xWb.Sheets(1)
    xWs.Cells(1, 1) = "Folder"
    xWs.Cells(1, 2) = "Count Items"
    Set xSourceFolder = Outlook.Application.Session.PickFolder
    If xSourceFolder = nill Then
        xWb.Close False
        xExcelApp.Quit
        Exit Sub
    End If
    For Each xSubFolder In xSourceFolder.Folders
        Call ProcessFolders(xWs, xSubFolder)
    Next
    xWs.Columns("A:B").AutoFit
    Set xShell = CreateObject("Shell.Application")
    Set xFolder = xShell.BrowseforFolder(0, "Select a Folder:", 0, 0)
   If TypeName(xFolder) = "Nothing" Then
        xWb.Close False
        xExcelApp.Quit
        Exit Sub
    End If
    Set xFolderItem = xFolder.Self
    xFilePath = xFolderItem.Path & "\"
    xFilePath = xFilePath & xSourceFolder.Name & "(" & Format(Now, "yyyy-mm-dd hh-mm-ss") & ").xlsx"
    xWb.Close True, xFilePath
    xExcelApp.Quit
    Set xShell = Nothing
    MsgBox "Complete!", vbExclamation, "Kutools for Outlook"
End Sub
Sub ProcessFolders(ByVal Ws As Worksheet, ByVal xCurFolder As Outlook.Folder)
    Dim xSubFld As Folder
    Dim xItemCount As Long
   Dim xRow As Integer
    xItemCount = xCurFolder.Items.Count
    xRow = Ws.UsedRange.Rows.Count + 1
    Ws.Cells(xRow, 1) = xCurFolder.FolderPath
    Ws.Cells(xRow, 2) = xItemCount
    If xCurFolder.Folders.Count > 0 Then
       For Each xSubFld In xCurFolder.Folders
           Call ProcessFolders(Ws, xSubFld)
       Next
    End If
End Sub

3. Og stadig i Microsoft Visual Basic til applikationer vindue, skal du klikke på Værktøjer > Referencer at gå til Referencer-projekt1 dialogboks, og tjek Microsoft Excel-objektbibliotek mulighed fra Tilgængelige referencer listefelt, se skærmbillede:

doc eksportvarer tæller 1

4. Klik derefter på OK, og tryk derefter på F5 nøgle til at køre denne kode, a Vælg mappe er poppet ud, skal du vælge en e-mail-konto, som du vil eksportere varetællingen, se skærmbillede:

doc eksportvarer tæller 2

5. Klik derefter på OK, og en anden Gennemse for mappe vises, skal du vælge en mappe for at placere Excel-filen, se skærmbillede:

doc eksportvarer tæller 3

6. Endelig skal du klikke på OK knap, og elementerne tæller i alle mapper på den valgte konto er blevet eksporteret til en Excel-projektmappe, kan du åbne Excel-filen for at se resultatet, se skærmbillede:

doc eksportvarer tæller 4


Bedste kontorproduktivitetsværktøjer

Kutools til Outlook - Over 100 kraftfulde funktioner til at superlade din Outlook

🤖 AI Mail Assistant: Øjeblikkelige pro-e-mails med AI-magi – et klik for geniale svar, perfekt tone, flersproget beherskelse. Forvandl e-mailing ubesværet! ...

📧 Email Automation: Ikke til stede (tilgængelig til POP og IMAP)  /  Planlæg Send e-mails  /  Auto CC/BCC efter regler ved afsendelse af e-mail  /  Automatisk videresendelse (avancerede regler)   /  Tilføj automatisk hilsen   /  Opdel automatisk e-mails med flere modtagere i individuelle meddelelser ...

📨 Email Management: Genkald nemt e-mails  /  Bloker svindel-e-mails af emner og andre  /  Slet duplikerede e-mails  /  Avanceret søgning  /  Konsolider mapper ...

📁 Vedhæftede filer ProBatch Gem  /  Batch adskilles  /  Batch komprimere  /  Automatisk gem   /  Automatisk afmontering  /  Automatisk komprimering ...

🌟 Interface Magic: 😊 Flere smukke og seje emojis   /  Boost din Outlook-produktivitet med fanebaserede visninger  /  Minimer Outlook i stedet for at lukke ...

👍 Wonders med et enkelt klik: Besvar alle med indgående vedhæftede filer  /   Anti-phishing e-mails  /  🕘Vis afsenderens tidszone ...

👩🏼‍🤝‍👩🏻 Kontakter og kalender: Batch Tilføj kontakter fra udvalgte e-mails  /  Opdel en kontaktgruppe til individuelle grupper  /  Fjern fødselsdagspåmindelser ...

Over 100 Features Afvent din udforskning! Klik her for at finde mere.

Læs mere       Gratis download      Køb
 

 

Comments (5)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hello, CETIN,
Maybe you forgot the step3 in this article, you should check the Microsoft Excel Object Library option in the Available References list box.
please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Sub ProcessFolders(ByVal Ws As Worksheet, ByVal xCurFolder As Outlook.Folder)

This line gives error ;

User -defined type not defined, after pressing F5
This comment was minimized by the moderator on the site
Thank for posting this Code works Exactly as written, Kudos
This comment was minimized by the moderator on the site
This Is Perfect, it worked exactly as it is written, thank you for posting this code
This comment was minimized by the moderator on the site
Doesn't work
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations