Kuinka viedä nopeasti kunkin Outlook-kansion kohteiden kokonaismäärä Exceliin

Jos haluat saada raportin kussakin Outlook-kansiossa olevien kohteiden määrästä, voit käyttää tässä artikkelissa esiteltyä menetelmää. Se laskee nopeasti ja vie tulokset Excel-tiedostoon.

Edellisessä artikkelissani - “Kuinka saada nopeasti kansion ja kaikkien sen alikansioiden kokonaismäärä Outlook VBA: n kautta”, voit oppia menetelmän VBA:n avulla kansion kohteiden määrän saamiseksi. Jos kuitenkin haluat laskea kohteet kaikissa kansioissa, sinun on valittava jokainen kansio ja suoritettava makro yksitellen. Se on vähän tylsää. Siksi opetamme sinulle toisen menetelmän, joka vie määrän Excel-tiedostoon.

Vie nopeasti kunkin Outlook-kansion kohteiden kokonaismäärä Exceliin

Vie kunkin Outlook-kansion kohteiden kokonaismäärä Exceliin

  1. Käynnistä aluksi Outlook-ohjelma.
  2. Paina sitten "Alt + F11" -näppäimiä Outlookin pääikkunassa.
  3. Seuraavaksi pääset "Microsoft Visual Basic for Applications" -ikkunaan, jossa sinun on avattava moduuli, jota ei käytetä.
  4. Kopioi ja liitä seuraava VBA-koodi tähän moduuliin.
Public strExcelFile As String
Public objExcelApp As Excel.Application
Public objExcelWorkbook As Excel.Workbook
Public objExcelWorksheet As Excel.Worksheet

Sub Export_CountOfItems_InEachFolder_toExcel()
    Dim objSourcePST As Outlook.Folder
    Dim objFolder As Outlook.Folder
 
    'Create a new Excel file
    Set objExcelApp = CreateObject("Excel.Application")
    Set objExcelWorkbook = objExcelApp.Workbooks.Add
    Set objExcelWorksheet = objExcelWorkbook.Sheets("Sheet1")
    objExcelWorksheet.Cells(1, 1) = "Folder"
    objExcelWorksheet.Cells(1, 2) = "Count Items"
 
    'Select a source PST file
    Set objSourcePST = Outlook.Application.Session.PickFolder

    For Each objFolder In objSourcePST.folders
        Call ProcessFolders(objFolder)
    Next
 
    'Fit the columns from A to B
    objExcelWorksheet.Columns("A:B").AutoFit
 
    strExcelFile = "E:\Outlook\" & objSourcePST.Name & " Folder Items Count (" & Format(Now, "yyyy-mm-dd hh-mm-ss") & ").xlsx"
    objExcelWorkbook.Close True, strExcelFile

    MsgBox "Complete!", vbExclamation
End Sub

Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
    Dim objItem As Object
    Dim lCurrentFolderItemCount As Long
    Dim nLastRow As Integer
 
    lCurrentFolderItemCount = objCurrentFolder.Items.Count
 
    nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1

    'Add the values into the columns
    objExcelWorksheet.Range("A" & nLastRow) = objCurrentFolder.FolderPath
    objExcelWorksheet.Range("B" & nLastRow) = lCurrentFolderItemCount
 
    If objCurrentFolder.folders.Count > 0 Then
       For Each objSubfolder In objCurrentFolder.folders
           Call ProcessFolders(objSubfolder)
       Next
    End If
End Sub

VBA-koodi - Vie kunkin Outlook-kansion kohteiden kokonaismäärä Exceliin

  1. Sen jälkeen sinun on vaihdettava Outlook-makron suojaustaso matalaksi.
  2. Sitten voit palata äskettäin lisättyyn makroon ja painaa F5-näppäintä suorittaaksesi tämän makron.
  3. Seuraavaksi sinun on valittava lähde PST-tiedosto ja napsautettava "OK".
  4. Kun makro on valmis, voit siirtyä ennalta määritettyyn paikalliseen kansioon löytääksesi uuden Excel-tiedoston, joka näyttää seuraavalta kuvakaappaukselta:Excel-tiedosto

Rajaa ärsyttävät PST-virheet

Ehkä olet törmännyt erilaisiin ongelmiin Outlookin käytön aikana. Voit käsitellä pieniä ongelmia yksinkertaisesti turvautua Saapuneet-kansion korjaustyökalu. Kuitenkin, jos ongelmat ovat niin vakavia, että ne ovat ylittäneet sen, mitä sisäänrakennettu työkalu voi tehdä, sinun on käytettävä tehokkaampaa työkalua, kuten DataNumen Outlook Repair.

Tekijän esittely:

Shirley Zhang on tietojen palauttamisen asiantuntija DataNumen, Inc., joka on maailman johtava tietojen palautustekniikoissa, mukaan lukien mdf-korjaus ja Outlookin korjausohjelmistotuotteet. Lisätietoja osoitteessa www.datanumen.com

Kommenttien lisääminen on estetty.