Note: The other languages of the website are Google-translated. Back to English
English English

Jak policzyć liczbę wysłanych wiadomości e-mail miesięcznie w Outlooku?

Czasami możesz chcieć wiedzieć, ile e-maili wysyłasz miesięcznie. Ten samouczek wprowadzi kod VBA do zliczania liczby wysłanych wiadomości e-mail miesięcznie w programie Outlook.


Policz liczbę wysłanych wiadomości e-mail miesięcznie w Outlooku za pomocą kodu VBA

Zastosuj poniższy kod VBA, aby uzyskać liczbę wysyłanych e-maili każdego miesiąca, jak pokazano poniżej:

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.

2, Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.

Kod VBA: Policz liczbę wysłanych wiadomości e-mail miesięcznie:

Dim GDictionary As Object
Sub CountSentMailsByMonth()
'Updateby Extendoffice
Dim xSentFolder As Outlook.Folder
Dim xExcelApp As Excel.Application
Dim xWb As Excel.Workbook
Dim xWs As Excel.Worksheet
Dim xMonths As Variant
Dim xItemsCount As Variant
Dim xLastRow As Integer
Dim I As Integer
Dim xAccount As Account
On Error Resume Next
Set GDictionary = CreateObject("Scripting.Dictionary")
For Each xAccount In Application.Session.Accounts
  If VBA.LCase$(xAccount.SmtpAddress) = VBA.LCase$("yy@addin99.com") Then  'Specify the Email Account
    Set xSentFolder = xAccount.DeliveryStore.GetDefaultFolder(olFolderSentMail)
    If xSentFolder.DefaultItemType = olMailItem Then
      Call ProcessFolders(xSentFolder)
    End If
  End If
Next
Set xSentFolder = Nothing
Set xExcelApp = CreateObject("Excel.Application")
xExcelApp.Visible = True
Set xWb = xExcelApp.Workbooks.Add
Set xWs = xWb.Sheets(1)
With xWs
  .Cells(1, 1) = "Month"
  .Cells(1, 2) = "Count"
  .Cells(1, 1).Font.Bold = True
  .Cells(1, 2).Font.Bold = True
  .Cells(1, 1).HorizontalAlignment = xlCenter
  .Cells(1, 2).VerticalAlignment = xlCenter
End With
xMonths = GDictionary.Keys
xItemsCount = GDictionary.Items
For I = LBound(xMonths) To UBound(xMonths)
  xLastRow = xWs.Range("A" & xWs.Rows.Count).End(xlUp).Row + 1
  With xWs
    .Cells(xLastRow, 1) = xMonths(I)
    .Cells(xLastRow, 2) = xItemsCount(I)
  End With
Next
xWs.Columns("A:B").AutoFit
xExcelApp.Visible = True
Set xExcelApp = Nothing
Set xWb = Nothing
Set xWs = Nothing
End Sub

Sub ProcessFolders(ByVal Fld As Outlook.Folder)
Dim I As Long
Dim xMail As Outlook.MailItem
Dim xMonth As String
Dim xSubFolder As Folder
On Error Resume Next
For I = Fld.Items.Count To 1 Step -1
  If Fld.Items(I).Class = olMail Then
    Set xMail = Fld.Items(I)
    xMonth = Year(xMail.SentOn) & "/" & Month(xMail.SentOn)
    If GDictionary.Exists(xMonth) Then
      GDictionary(xMonth) = GDictionary(xMonth) + 1
    Else
      GDictionary.Add xMonth, 1
    End If
  End If
Next
If Fld.Folders.Count > 0 Then
  For Each xSubFolder In Fld.Folders
    Call ProcessFolders(xSubFolder)
  Next
End If
End Sub
Uwagi: W kodzie proszę zmienić konto e-mail”yy@addin99.com” do własnych.

3. Wciąż w Microsoft Visual Basic for Applications okno, kliknij Narzędzia > Referencje, W Referencje-projekt okno dialogowe, zaznacz Biblioteka obiektów Microsoft Excel 16.0 opcja z Dostępne referencje pole listy, zobacz zrzut ekranu:

4. Następnie kliknij OK aby zamknąć okno dialogowe i naciśnij F5 klucz, aby uruchomić ten kod. Następnie otworzy się plik Excel, który wyświetla liczbę wysłanych wiadomości e-mail każdego miesiąca dla określonego konta, patrz zrzut ekranu:


Kutools dla programu Outlook - wprowadza 100 zaawansowanych funkcji do programu Outlook i znacznie ułatwia pracę!

  • Auto CC / BCC według zasad podczas wysyłania wiadomości e-mail; Auto Forward Wiele e-maili na zamówienie; Automatyczna odpowiedź bez serwera Exchange i więcej funkcji automatycznych ...
  • Ostrzeżenie BCC - pokaż wiadomość, gdy spróbujesz odpowiedzieć wszystkim jeśli Twój adres e-mail znajduje się na liście BCC; Przypomnij o braku załącznikówi więcej funkcji przypominających ...
  • Odpowiedz (wszystkie) ze wszystkimi załącznikami w rozmowie pocztowej; Odpowiedz na wiele e-maili w sekundy; Automatyczne dodawanie powitania kiedy odpowiedz; Dodaj datę do tematu ...
  • Narzędzia załączników: Zarządzaj wszystkimi załącznikami we wszystkich wiadomościach e-mail, Automatyczne odłączanie, Kompresuj wszystko, Zmień nazwę wszystkiego, Zapisz wszystko ... Szybki raport, Policz wybrane wiadomości...
  • Potężne wiadomości-śmieci na zamówienie; Usuń zduplikowane wiadomości e-mail i kontakty... Umożliwiają inteligentniejsze, szybsze i lepsze działanie w programie Outlook.
strzał Kutools Outlook Kutools tab 1180x121
shot Kutools Outlook Kutools Plus Tab 1180x121
 
Sortuj komentarze według
Komentarze (0)
Brak ocen. Oceń jako pierwszy!
Nie ma tu jeszcze żadnych komentarzy
Zostaw swój komentarz
Publikowanie jako gość
×
Oceń ten post:
0   Postacie
Sugerowane lokalizacje