Hur man snabbt räknar de skickade e-postmeddelandena per månad i ditt Outlook

Om du lagrar skickade e-postmeddelanden i flera mappar och nu vill räkna alla dessa skickade mejl per månad kan du läsa den här artikeln. Här kommer vi att introducera ett betydligt snabbt sätt att få det.

Föregående artikel - “Hur man snabbt räknar inkommande e-post efter datum, månad eller år via Outlook VBA”Har delat ett sätt att räkna e-postmeddelanden per månad. Det kan dock bearbeta e-postmeddelandena i en mapp. Om du vill räkna e-postmeddelanden i flera eller till och med alla e-postmappar bör du använda de andra medlen. Således kommer vi i det följande att avslöja ett annat mycket snabbare sätt för dig.

Räkna de skickade e-postmeddelandena efter månad

  1. Till att börja med, öppna Outlook VBA-redigeraren via “Alt + F11”.
  2. Aktivera sedan referens till “MS Excel Object Library ”enligt”Hur man lägger till ett objekt Library Referens i VBA".
  3. Därefter placerar du följande VBA-kod i ett projekt eller en modul.
Dim objDictionary As Object

Sub CountSentMailsByMonth()
    Dim objOutlookFile As Outlook.Folder
    Dim objFolder As Outlook.Folder
    Dim objExcelApp As Excel.Application
    Dim objExcelWorkbook As Excel.Workbook
    Dim objExcelWorksheet As Excel.Worksheet
    Dim varMonths As Variant
    Dim varItemCounts As Variant
    Dim nLastRow As Integer
 
    Set objDictionary = CreateObject("Scripting.Dictionary")
    Set objInbox = Outlook.Application.Session.GetDefaultFolder(olFolderInbox)
 
    'Get the default Outlook data file
    Set objOutlookFile = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Parent
 
    For Each objFolder In objOutlookFile.Folders
        If objFolder.DefaultItemType = olMailItem Then
           Call ProcessFolders(objFolder)
        End If
    Next

    Set objExcelApp = CreateObject("Excel.Application")
    objExcelApp.Visible = True
    Set objExcelWorkbook = objExcelApp.Workbooks.Add
    Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
 
    With objExcelWorksheet
        .Cells(1, 1) = "Month"
        .Cells(1, 2) = "Count"
    End With
 
    varMonths = objDictionary.Keys
    varItemCounts = objDictionary.Items
 
    For i = LBound(varMonths) To UBound(varMonths)
        nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
        With objExcelWorksheet
            .Cells(nLastRow, 1) = varMonths(i)
            .Cells(nLastRow, 2) = varItemCounts(i)
        End With
    Next
 
    objExcelWorksheet.Columns("A:B").AutoFit
End Sub

Sub ProcessFolders(ByVal objCurFolder As Outlook.Folder)
    Dim i As Long
    Dim objMail As Outlook.MailItem
    Dim strMonth As String
 
    For i = objCurFolder.Items.Count To 1 Step -1
        If objCurFolder.Items(i).Class = olMail Then
           Set objMail = objCurFolder.Items(i)
           'Change to your own email address
           If objMail.SenderEmailAddress = "you@datanumen.com" Then
              strMonth = Format(Year(objMail.SentOn) & "-" & Month(objMail.SentOn), "YYYY/MM")
 
              If objDictionary.Exists(strMonth) Then
                 objDictionary(strMonth) = objDictionary(strMonth) + 1
              Else
                 objDictionary.Add strMonth, 1
              End If
           End If
       End If
    Next
End Sub

VBA-kod - Räkna de skickade e-postmeddelandena per månad

  1. Flytta sedan markören till den första underrutinen.
  2. Tryck sedan på “F5” för att utlösa detta makro.
  3. Omedelbart kommer en Excel-fil att dyka upp, som innehåller antalet skickade e-postmeddelanden varje månad, som visas i figuren nedan.Räknas i Excel

Var inte panik inför korruption i Outlook

Du kanske tenderar att vara orolig när du stöter på PST-skador. Men i själva verket borde du lugna dig så snart som möjligt. Som vi alla vet är panik hjälplös och till och med leder till mer kaotiska och allvarliga problem. Du bör hålla dig lugn för att överväga åtgärder, som att tänka på om du har uppdaterat säkerhetskopiering och överväga hur du gör reparera PST - huruvida man använder tredjepartsverktyg som DataNumen Outlook Repair eller kontakta relevanta yrkesverksamma.

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 reparera mdf och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com

Kommentarer är stängda.