Comment compter rapidement les e-mails entrants par date, mois ou année via Outlook VBA

Partage maintenant:

Si vous souhaitez compter le nombre d'e-mails entrants à une date précise, ou au cours d'un mois ou d'une année spécifique, vous pouvez utiliser les moyens rapides présentés dans cet article. Il vous apprendra à utiliser VBA pour l'obtenir en un clin d'œil.

Lorsqu'il s'agit de compter le nombre d'e-mails reçus à une date ou à une période spécifique, beaucoup sont habitués à utiliser le dossier de recherche Outlook, ce qui nous permet de rassembler tous les e-mails entrants à une date ou une plage de dates spécifique dans un seul dossier de recherche. Ensuite, nous pouvons utiliser la fonction "Afficher le nombre total d'éléments" pour le dossier de messagerie pour l'obtenir. Cependant, sans aucun doute, cette méthode est assez gênante. Ainsi, ici, nous allons vous apprendre une autre astuce, qui peut utiliser Outlook VBA pour vous aider à obtenir le nombre total. Maintenant, lisez la suite pour apprendre les étapes et les codes détaillés.

Compter les e-mails entrants par date, mois ou année

Compter les e-mails entrants par date

  1. À start avec, lancez correctement votre programme Outlook.
  2. Ensuite, vous pouvez passer à l'onglet "Développeur" et cliquer sur le bouton "Visual Basic".
  3. Ensuite, dans la fenêtre contextuelle de l'éditeur Outlook VBA, vous pouvez ouvrir un nouveau module par "Insérer"> "Module".
  4. Ensuite, copiez les codes VBA suivants dans le nouveau module.
'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

Codes VBA - Compter les e-mails entrants par date

À noter: Ce code ci-dessus fonctionne pour compter les e-mails entrants par date.

  1. Après cela, vous pouvez ajouter la nouvelle macro à la barre d'outils d'accès rapide comme d'habitude.
  2. Enfin, vous pouvez essayer.
  • Tout d'abord, sélectionnez le dossier Boîte de réception.
  • Cliquez ensuite sur le bouton dans la barre d'outils d'accès rapide.Exécuter une macro
  • Ensuite, vous devez saisir une date spécifique au format "aaaa-mm-jj".Spécifiez la date
  • Enfin, vous recevrez une invite du nombre total, comme l'image ci-dessous :Compter les e-mails entrants par date

Compter les e-mails entrants par mois ou par année

Comme le code ci-dessus est spécifié pour compter par jour, si vous souhaitez compter par mois ou par année, vous devez apporter quelques modifications aux codes.

  1. Tout d'abord, changez tous les "strDay" en strMois or strAnnée.
  2. Deuxièmement, remplacez la ligne "strDay = InputBox("Enter the specific day.(Format: yyyy-mm-dd)", "Spécifier la date")" par :
  • strMonth = InputBox("Entrez le mois spécifique.(Format : aaaa-mm)", "Spécifiez le mois")
  • strYear = InputBox("Entrez l'année spécifique.(Format : yyyy)", "Spécifiez l'année")
  1. Troisièmement, modifiez la ligne "strReceivedDate = Year(dReceivedTime) & "-" & Month(dReceivedTime) & "-" & Day(dReceivedTime)" pour :
  • strReceivedDate = Année(dReceivedTime) & "-" & Mois(dReceivedTime) [Pour mois]
  • strReceivedDate = Année(dReceivedTime) [pour l'année].

Que se passera-t-il après le plantage d'Outlook

De nombreux utilisateurs ont déjà subi un crash d'Outlook. Au mieux, après résolutiontarting Outlook, toutes les choses seront restaurées, à savoir rien ne se passera. Cependant, au pire, vous pouvez rencontrer de graves Fichier PST corrompu. À ce stade, en supposant que vous ne disposiez pas de sauvegardes de données à jour, votre dernier recours est sans aucun doute un outil de réparation remarquable, tel que DataNumen Outlook Repair.

Introduction de l'auteur:

Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris récupération SQL et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com

Partage maintenant:

Les commentaires sont fermés.