Slik registrerer du det totale antallet innkommende e-poster hver dag automatisk i en Excel-fil

Denne artikkelen vil lære deg hvordan du lar Outlook automatisk telle hvor mange e-poster du mottok hver dag og skrive tallet inn i en Excel-fil.

Mange brukere må telle det totale antallet e-poster som mottas hver dag. I tillegg, for mer praktisk sjekk i fremtiden, er mange vant til å registrere det totale antallet i en Excel-fil. I dette tilfellet kan du selvfølgelig velge å telle og registrere manuelt hver dag. Det er imidlertid litt plagsomt. Og du kan glemme å gjøre det noen ganger. Derfor må du ønske deg en hendig metode som kan få Outlook til å gjøre det automatisk. Som svar på dette kravet vil vi lære deg hvordan du bruker VBA for å realisere det i det følgende.

Registrer automatisk det totale antallet innkommende e-poster hver dag i en Excel-fil

Registrer automatisk det totale antallet innkommende e-poster hver dag i en Excel-fil

  1. Start Outlook-applikasjonen helt i begynnelsen.
  2. Deretter trykker du på "Alt + F11" snarveier i hovedvinduet i Outlook.
  3. Neste i popup-vinduet for VBA-redigering, åpne "ThisOutlookSession" -prosjektet.
  4. Kopier og lim deretter inn følgende VBA-koder i dette prosjektet.
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 - Registrer automatisk det totale antallet innkommende e-poster hver dag i en Excel-fil

  1. Deretter signerer du denne koden og endrer Outlook-makroinnstillingene for å tillate signerte makroer.
  2. Etter det må du lage en gjentakende oppgave på daglig basis.
  • Først klikker du på "Ny oppgave"-knappen i oppgaveruten.
  • I popup-vinduet Ny oppgave klikker du på "Recurrence"-knappen.
  • I den påfølgende dialogboksen velger du "Daglig", "Hver 1 dag(er)" og "Ingen sluttdato" og til slutt trykker du "OK".Aktiver gjentakelse av oppgaver
  • Endre senere oppgavens emne og påminnelse i henhold til dine behov.Still inn påminnelse
  • Til slutt klikker du på "Lagre og lukk"-knappen.
  1. Fra nå av, hver gang denne oppgavens påminnelsesvarsler, vil Outlook automatisk telle e-postene mottatt i går og deretter registrere nummeret i Excel-filen, som følgende skjermbilde:Excel-fil for e-posttelling

Rømme fra permanent PST-datatap

Ingen er villige til å akseptere permanent tap av PST-data. Imidlertid er Outlook PST-fil utsatt for korrupsjon. Derfor bør du ta tilstrekkelige forholdsregler, for eksempel å lage en konsekvent og oppdatert sikkerhetskopi av PST-data og holde en kraftig PST gjenoppretting verktøy i nærheten, som DataNumen Outlook Repair.

Forfatterintroduksjon:

Shirley Zhang er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert sql reparasjon og Outlook-reparasjonsprodukter. For mer informasjon besøk www.datanumen. Med

Kommentarer er stengt.