Har bir Outlook papkasidagi elementlar soni haqida hisobot olishni istasangiz, ushbu maqolada keltirilgan usuldan foydalanishingiz mumkin. U tezda hisoblashni amalga oshiradi va natijalarni Excel fayliga eksport qiladi.
Oldingi maqolamda - "Outlook VBA orqali jild va uning barcha pastki papkalaridagi jami elementlar sonini qanday tezda olish mumkin”, papkadagi elementlar sonini olish uchun VBA yordamida usulni oʻrganishingiz mumkin. Shu bilan birga, agar siz barcha papkalardagi elementlarni hisoblashni istasangiz, har bir jildni tanlab, so'lni birma-bir ishga tushirishingiz kerak. Bu biroz zerikarli. Shuning uchun biz sizga hisobni Excel fayliga eksport qiladigan boshqa usulni o'rgatamiz.
Har bir Outlook jildidagi elementlarning umumiy sonini Excelga eksport qiling
- Dastlab, Outlook dasturini ishga tushiring.
- Keyin asosiy Outlook oynasida "Alt + F11" tugmachalarini bosing.
- Keyinchalik siz "Microsoft Visual Basic for Applications" oynasiga kirasiz, unda ishlatilmaydigan modulni ochishingiz kerak bo'ladi.
- Keyinchalik, ushbu modulga quyidagi VBA kodini nusxa ko'chiring va joylashtiring.
Public strExcelFile As String
Public objExcelApp As Excel.Application
Public objExcelWorkbook As Excel.Workbook
Public objExcelWorksheet As Excel.Worksheet
Sub Export_CountOfItems_InEachFolder_toExcel()
Dim objSourcePST As Outlook.Folder
Dim objFolder As Outlook.Folder
'Create a new Excel file
Set objExcelApp = CreateObject("Excel.Application")
Set objExcelWorkbook = objExcelApp.Workbooks.Add
Set objExcelWorksheet = objExcelWorkbook.Sheets("Sheet1")
objExcelWorksheet.Cells(1, 1) = "Folder"
objExcelWorksheet.Cells(1, 2) = "Count Items"
'Select a source PST file
Set objSourcePST = Outlook.Application.Session.PickFolder
For Each objFolder In objSourcePST.folders
Call ProcessFolders(objFolder)
Next
'Fit the columns from A to B
objExcelWorksheet.Columns("A:B").AutoFit
strExcelFile = "E:\Outlook\" & objSourcePST.Name & " Folder Items Count (" & Format(Now, "yyyy-mm-dd hh-mm-ss") & ").xlsx"
objExcelWorkbook.Close True, strExcelFile
MsgBox "Complete!", vbExclamation
End Sub
Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
Dim objItem As Object
Dim lCurrentFolderItemCount As Long
Dim nLastRow As Integer
lCurrentFolderItemCount = objCurrentFolder.Items.Count
nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
'Add the values into the columns
objExcelWorksheet.Range("A" & nLastRow) = objCurrentFolder.FolderPath
objExcelWorksheet.Range("B" & nLastRow) = lCurrentFolderItemCount
If objCurrentFolder.folders.Count > 0 Then
For Each objSubfolder In objCurrentFolder.folders
Call ProcessFolders(objSubfolder)
Next
End If
End Sub
- Shundan so'ng, Outlook makro xavfsizlik darajasini past darajaga o'zgartirishingiz kerak.
- Keyin yangi qo'shilgan makrosga qaytishingiz va ushbu makrosni ishga tushirish uchun F5 tugmachasini bosishingiz mumkin.
- Keyin manba PST faylini tanlashingiz va "OK" tugmasini bosishingiz kerak.
- Makros tugagandan so'ng, siz yangi Excel faylini topish uchun oldindan belgilangan mahalliy papkaga o'tishingiz mumkin, bu quyidagi skrinshotga o'xshaydi:
Zerikarli PST xatolarini tuzating
Ehtimol, Outlook-dan foydalanish paytida siz turli xil muammolarga duch kelgansiz. Kichik muammolarni hal qilish uchun siz shunchaki murojaat qilishingiz mumkin pochta qutisini tuzatish vositasi. Shunga qaramay, agar muammolar juda jiddiy bo'lsa, ular o'rnatilgan vosita qila oladigan darajadan tashqarida bo'lsa, siz kuchliroq vositadan foydalanishingiz kerak, masalan DataNumen Outlook Repair.
Muallif kirish:
Shirli Chjan ma'lumotlarni qayta tiklash bo'yicha mutaxassis DataNumenMa'lumotlarni qayta tiklash texnologiyalari bo'yicha jahon yetakchisi bo'lgan , Inc mdf ta'mirlash va Outlook ta'mirlash dasturiy mahsulotlar. Qo'shimcha ma'lumot olish uchun tashrif buyuring www.datanumen.com


