Hur man automatiskt registrerar det totala antalet inkommande e-post varje dag i en Excel-fil

Denna artikel kommer att lära dig hur du låter Outlook automatiskt räkna hur många e-postmeddelanden du fått varje dag och skriva numret i en Excel-fil.

Många användare måste räkna det totala antalet e-postmeddelanden som tas emot varje dag. Dessutom, för en bekvämare kontroll i framtiden, är många vana vid att registrera det totala antalet i en Excel-fil. I det här fallet kan du naturligtvis välja att räkna och spela in manuellt varje dag. Det är dock lite besvärligt. Och du kanske glömmer att göra det ibland. Därför måste du önska en praktisk metod som kan göra att Outlook automatiskt gör det. Som svar på detta krav lär vi dig hur du använder VBA för att förverkliga det i det följande.

Registrera automatiskt det totala antalet inkommande e-postmeddelanden varje dag i en Excel-fil

Registrera automatiskt det totala antalet inkommande e-postmeddelanden varje dag i en Excel-fil

  1. Starta din Outlook-applikation redan från början.
  2. Tryck sedan på ”Alt + F11” genvägar i huvudfönstret i Outlook.
  3. Öppna sedan projektet ”ThisOutlookSession” i popup-fönstret för VBA-redigerare.
  4. Kopiera sedan och klistra in följande VBA-koder i detta projekt.
Private Sub Application_Reminder(ByVal Item As Object)
    If Item.Class = olTask And Item.Subject = "Update Email Count" Then
       Call GetAllInboxFolders
    End If
End Sub

Private Sub GetAllInboxFolders()
    Dim objInboxFolder As Outlook.Folder
    Dim strExcelFile As String
    Dim objExcelApp As Excel.Application
    Dim objExcelWorkbook As Excel.Workbook
    Dim objExcelWorksheet As Excel.Worksheet
    Dim nNextEmptyRow As Integer
    Dim lEmailCount As Long
 
    lEmailCount = 0
    Set objInboxFolder = Outlook.Application.Session.GetDefaultFolder(olFolderInbox)
    Call UpdateEmailCount(objInboxFolder, lEmailCount)
 
    ‘Change the path to the Excel file
    strExcelFile = "E:\Email\Email Count.xlsx"
    Set objExcelApp = CreateObject("Excel.Application")
    Set objExcelWorkbook = objExcelApp.Workbooks.Open(strExcelFile)
    Set objExcelWorksheet = objExcelWorkbook.Sheets("Sheet1")
 
    nNextEmptyRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
 
    'Add the values into the columns
    objExcelWorksheet.Range("A" & nNextEmptyRow) = nNextEmptyRow - 1
    objExcelWorksheet.Range("B" & nNextEmptyRow) = Year(Date - 1) & "-" & Month(Date - 1) & "-" & Day(Date - 1)
    objExcelWorksheet.Range("C" & nNextEmptyRow) = lEmailCount
 
    'Fit the columns from A to C
    objExcelWorksheet.Columns("A:C").AutoFit
   
    'Save the changes and close the Excel file
    objExcelWorkbook.Close SaveChanges:=True
End Sub

Private Sub UpdateEmailCount(objFolder As Outlook.Folder, ByRef lCurEmailCount As Long)
    Dim objItems As Outlook.Items
    Dim objItem As Object
    Dim objMail As Outlook.MailItem
    Dim strDay As String
    Dim strReceivedDate As String
    Dim lEmailCount As Long
    Dim objSubFolder As Outlook.Folder
 
    Set objItems = objFolder.Items
 
    objItems.SetColumns ("ReceivedTime")
    strDay = Year(Date - 1) & "-" & Month(Date - 1) & "-" & Day(Date - 1)
 
    For Each objItem In objItems
        If objItem.Class = olMail Then
           Set objMail = objItem
           strReceivedDate = Year(objMail.ReceivedTime) & "-" & Month(objMail.ReceivedTime) & "-" & Day(objMail.ReceivedTime)
           If strReceivedDate = strDay Then
              lCurEmailCount = lCurEmailCount + 1
           End If
        End If
    Next
 
    'Process the subfolders in the folder recursively
    If (objFolder.Folders.Count > 0) Then
       For Each objSubFolder In objFolder.Folders
           Call UpdateEmailCount(objSubFolder, lCurEmailCount)
       Next
    End If
End Sub

VBA-koder - Registrera automatiskt det totala antalet inkommande e-postmeddelanden varje dag i en Excel-fil

  1. Därefter signerar du den här koden och ändrar dina Outlook-makroinställningar så att signerade makron tillåts.
  2. Därefter måste du skapa en återkommande uppgift dagligen.
  • Klicka först på knappen "Ny uppgift" i fönstret Uppgifter.
  • I popup-fönstret Ny uppgift klickar du på knappen "Återkommande".
  • Välj sedan “Daily”, “Every 1 day (s)” och “No end date” i den efterföljande dialogrutan och tryck sist ”OK”.Aktivera Återkommande uppgift
  • Senare ändra uppgiftsämne och påminnelse enligt dina behov.Ställ in påminnelse
  • Klicka så småningom på knappen "Spara och stäng".
  1. Från och med nu räknar Outlook automatiskt de e-postmeddelanden som mottogs igår varje gång denna uppgifts påminnelse varnar och registrerar sedan numret i Excel-filen, som följande skärmdump:Excel-fil för antal e-postmeddelanden

Fly från permanent PST-dataförlust

Ingen är villig att acceptera permanent PST-dataförlust. Outlook PST-filen är dock benägen för korruption. Därför bör du vidta tillräckliga försiktighetsåtgärder, till exempel att göra en konsekvent och uppdaterad PST-säkerhetskopiering och behålla en kraftfull PST-återhämtning verktyg i närheten, som DataNumen Outlook Repair.

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

Kommentarer är stängda.