보낸 이메일을 여러 폴더에 저장하고 이제 이러한 모든 보낸 메일을 월별로 계산하려면이 기사를 읽을 수 있습니다. 여기서 우리는 그것을 얻는 상당히 빠른 방법을 소개 할 것입니다.
이전 기사 –“Outlook VBA를 통해 날짜, 월 또는 연도별로 수신 이메일을 빠르게 계산하는 방법”는 이메일 수를 월별로 계산하는 방법을 공유했습니다. 그러나 하나의 폴더에서 이메일을 처리 할 수 있습니다. 여러 메일 폴더 또는 모든 메일 폴더의 이메일 수를 계산하려면 다른 방법을 사용해야합니다. 따라서 다음에서 우리는 훨씬 더 빠른 또 다른 방법을 제공 할 것입니다.
월별 보낸 이메일 계산
- 먼저 "Alt + F11"을 통해 Outlook VBA 편집기에 액세스합니다.
- 그런 다음“MS Excel Object Library "에 따라"개체 라이브러리를 추가하는 방법rary VBA의 참조".
- 그 후 다음 VBA 코드를 프로젝트 또는 모듈에 넣으십시오.
Dim objDictionary As Object
Sub CountSentMailsByMonth()
Dim objOutlookFile As Outlook.Folder
Dim objFolder As Outlook.Folder
Dim objExcelApp As Excel.Application
Dim objExcelWorkbook As Excel.Workbook
Dim objExcelWorksheet As Excel.Worksheet
Dim varMonths As Variant
Dim varItemCounts As Variant
Dim nLastRow As Integer
Set objDictionary = CreateObject("Scripting.Dictionary")
Set objInbox = Outlook.Application.Session.GetDefaultFolder(olFolderInbox)
'Get the default Outlook data file
Set objOutlookFile = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Parent
For Each objFolder In objOutlookFile.Folders
If objFolder.DefaultItemType = olMailItem Then
Call ProcessFolders(objFolder)
End If
Next
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Visible = True
Set objExcelWorkbook = objExcelApp.Workbooks.Add
Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
With objExcelWorksheet
.Cells(1, 1) = "Month"
.Cells(1, 2) = "Count"
End With
varMonths = objDictionary.Keys
varItemCounts = objDictionary.Items
For i = LBound(varMonths) To UBound(varMonths)
nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
With objExcelWorksheet
.Cells(nLastRow, 1) = varMonths(i)
.Cells(nLastRow, 2) = varItemCounts(i)
End With
Next
objExcelWorksheet.Columns("A:B").AutoFit
End Sub
Sub ProcessFolders(ByVal objCurFolder As Outlook.Folder)
Dim i As Long
Dim objMail As Outlook.MailItem
Dim strMonth As String
For i = objCurFolder.Items.Count To 1 Step -1
If objCurFolder.Items(i).Class = olMail Then
Set objMail = objCurFolder.Items(i)
'Change to your own email address
If objMail.SenderEmailAddress = "you@datanumen.com" Then
strMonth = Format(Year(objMail.SentOn) & "-" & Month(objMail.SentOn), "YYYY/MM")
If objDictionary.Exists(strMonth) Then
objDictionary(strMonth) = objDictionary(strMonth) + 1
Else
objDictionary.Add strMonth, 1
End If
End If
End If
Next
End Sub
- 다음으로 커서를 첫 번째 서브 루틴으로 이동합니다.
- 그런 다음 "F5"를 눌러이 매크로를 트리거합니다.
- 한 번에 아래 그림과 같이 매달 보낸 이메일 수를 포함하는 Excel 파일이 표시됩니다.
Outlook 손상에 당황하지 마십시오
PST 손상이 발생할 때 걱정하는 경향이 있습니다. 그러나 실제로는 가능한 한 빨리 진정하는 것이 좋습니다. 우리 모두 알다시피, 공황은 무기력하고 심지어 더 혼란스럽고 심각한 문제로 이어집니다. 백업을 업데이트했는지 생각하고 백업 방법을 고려하는 등의 조치를 고려하려면 침착해야합니다. PST 수리 – 다음과 같은 타사 도구에 의지할지 여부 DataNumen Outlook Repair 또는 관련 전문가에게 문의하십시오.
저자 소개 :
Shirley Zhang은 데이터 복구 전문가입니다. DataNumen, Inc.는 다음과 같은 데이터 복구 기술 분야의 세계적 리더입니다. mdf 수리 및 전망 수리 소프트웨어 제품. 자세한 내용은 WWW.datanumen.COM

