Come contare rapidamente le e-mail in arrivo per data, mese o anno tramite Outlook VBA

Condividi ora:

Se desideri contare il numero di email in arrivo in una data specifica o in un mese o anno specifico, puoi utilizzare i mezzi rapidi introdotti in questo articolo. Ti insegnerà come usare VBA per ottenerlo in un lampo.

Quando si tratta di contare quante e-mail ricevute in date o periodi specifici, molti sono abituati a utilizzare la cartella di ricerca di Outlook, che ci consente di raccogliere tutte le e-mail in arrivo nella data o nell'intervallo di date specifico in un'unica cartella di ricerca. Quindi possiamo utilizzare la funzione "mostra il numero totale di elementi" per la cartella di posta per ottenerlo. Tuttavia, senza alcun dubbio, questo metodo è piuttosto problematico. Pertanto, qui ti insegneremo un altro trucco, che può utilizzare Outlook VBA per aiutarti a ottenere il conteggio totale. Ora continua a leggere per apprendere i passaggi e i codici dettagliati.

Conta le email in arrivo per data, mese o anno

Contare le email in arrivo per data

  1. Innanzitutto, avvia correttamente il programma Outlook.
  2. Quindi puoi passare alla scheda "Sviluppatore" e fare clic sul pulsante "Visual Basic".
  3. Successivamente nella finestra popup dell'editor VBA di Outlook, puoi aprire un nuovo modulo tramite "Inserisci"> "Modulo".
  4. Successivamente, copia i seguenti codici VBA nel nuovo modulo.
'The following codes are working to count by day
Sub CountReceivedEmailsbyDay()
    Dim objItems As Outlook.Items
    Dim objItem As Object
    Dim objMail As Outlook.MailItem
    Dim strDay As String
    Dim dReceivedTime As Date
    Dim strReceivedDate As String
    Dim i, n As Long
    Dim strMsg As String
    Dim nPrompt As Integer
 
    Set objItems = Outlook.Application.ActiveExplorer.CurrentFolder.Items
 
    objItems.SetColumns ("ReceivedTime")
    strDay = InputBox("Enter the specific day.(Format: yyyy-mm-dd)", "Specify Date")
 
    If strDay <> "" Then
       n = 0
       For i = 1 To objItems.Count
           If objItems.Item(i).Class = olMail Then
              Set objMail = objItems.Item(i)
              dReceivedTime = objMail.ReceivedTime
              strReceivedDate = Year(dReceivedTime) & "-" & Month(dReceivedTime) & "-" & Day(dReceivedTime)
              If strReceivedDate = strDay Then
                 n = n + 1
              End If
           End If
       Next i
 
       strMsg = "You have received " & n & " emails on " & strDay & "."
       nPrompt = MsgBox(strMsg, vbExclamation, "Count Received Emails")
    Else
       nPrompt = MsgBox("Please input the specific day!", vbExclamation)
    End If
End Sub

Codici VBA: conta le email in arrivo per data

Attenzione: Questo codice sopra funziona per contare le e-mail in arrivo per data.

  1. Successivamente, puoi aggiungere la nuova macro alla barra di accesso rapido come al solito.
  2. Finalmente puoi provare.
  • Innanzitutto, seleziona la cartella Posta in arrivo.
  • Quindi fare clic sul pulsante nella barra di accesso rapido.Esegui macro
  • Successivamente è necessario inserire una data specifica nel formato "aaaa-mm-gg".Specifica la data
  • Infine, riceverai una richiesta del conteggio totale, come l'immagine qui sotto:Contare le email in arrivo per data

Conta le email in arrivo per mese o anno

Poiché il codice sopra è specificato per il conteggio per giorno, se si desidera contare per mese o anno, è necessario apportare alcune modifiche ai codici.

  1. Innanzitutto, cambia tutto "strDay" in strMese or strAnno.
  2. In secondo luogo, sostituisci la riga "strDay = InputBox("Enter the specific day.(Format: yyyy-mm-dd)", "Specify Date")" con:
  • strMonth = InputBox("Inserisci il mese specifico.(Formato: aaaa-mm)", "Specifica mese")
  • strYear = InputBox("Inserisci l'anno specifico.(Formato: aaaa)", "Specifica anno")
  1. In terzo luogo, modificare la riga "strReceivedDate = Year(dReceivedTime) & "-" & Month(dReceivedTime) & "-" & Day(dReceivedTime)" in:
  • strReceivedDate = Year(dReceivedTime) & “-” & Month(dReceivedTime) [per mese]
  • strReceivedDate = Anno(dReceivedTime) [per anno].

Cosa accadrà dopo l'arresto anomalo di Outlook

Molti utenti hanno già subito arresti anomali di Outlook. Nella migliore delle ipotesi, dopo aver riavviato Outlook, tutto verrà ripristinato, ovvero non accadrà nulla. Tuttavia, nella peggiore delle ipotesi, potresti riscontrare gravi problemi. Corruzione PST. A quel punto, supponendo che tu non disponga di backup dei dati correnti, la tua ultima risorsa è, senza dubbio, uno straordinario strumento di riparazione, come DataNumen Outlook Repair.

Introduzione dell'autore:

Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui ripristino sql e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.