Vazifalar beshta holatga ega bo'lishi mumkin - “Boshlanmagan”, “Bajarilmoqda”, “Bajarildi”, “Boshqa birovni kutmoqda” va “Kechiktirilgan”. Agar siz barcha vazifalarni holati bo'yicha tezda sanamoqchi bo'lsangiz, ushbu maqolada keltirilgan usuldan foydalanishingiz mumkin.
Outlook foydalanuvchilarga vazifalarga yoki belgilangan elementlarga status berishni qo'llab-quvvatlaydi. Beshta holat mavjud - mos ravishda "Boshlanmagan", "Davom etmoqda", "Bajarildi", "Boshqa birovni kutmoqda" va "Kechiktirilgan". Ehtimol, sizning Outlookingizda juda ko'p vazifalar mavjud va ular turli holatlarda. Endi, agar siz barcha vazifalarni holati bo'yicha sanamoqchi bo'lsangiz, quyidagi usuldan foydalanishingiz mumkin.
Barcha vazifalarni holati bo'yicha tezda hisoblang
- Avval Outlook VBA muharririni ishga tushiring.Outlook-da VBA kodini qanday ishlatish kerak".
- Keyin, VBA muharririda, "MS Excel obyekt kutubxonasi" ga, shuningdek, "MS skriptlash ish vaqti" ga havolani yoqing.VBA da obyekt kutubxonasi havolasini qanday qo'shish mumkin".
- Keyin, foydalanilmagan modulga quyidagi kodni nusxalang.
Dim objDictionary As New Scripting.Dictionary
Sub CountTasksByStatus()
Dim objStore As Outlook.Store
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 varStatuses As Variant
Dim varTaskCounts As Variant
Dim i As Integer
Dim nLastRow As Integer
'Count by Dictionary
Set objDictionary = CreateObject("Scripting.Dictionary")
'Process All Outlook data files
For Each objStore In Application.Session.Stores
Set objOutlookFile = objStore.GetRootFolder
For Each objFolder In objOutlookFile.Folders
If objFolder.DefaultItemType = olTaskItem Then
Call ProcessTaskFolders(objFolder)
End If
Next
Next
'Export the counts to an Excel worksheet
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Visible = True
Set objExcelWorkbook = objExcelApp.Workbooks.Add
Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
With objExcelWorksheet
.Cells(1, 1) = "Status"
.Cells(1, 1).Font.Bold = True
.Cells(1, 2) = "Task Count"
.Cells(1, 2).Font.Bold = True
End With
varStatuses = objDictionary.Keys
varTaskCounts = objDictionary.Items
For i = LBound(varStatuses) To UBound(varStatuses)
nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
With objExcelWorksheet
.Cells(nLastRow, 1) = varStatuses(i)
.Cells(nLastRow, 2) = varTaskCounts(i)
End With
Next
objExcelWorksheet.Columns("A:B").AutoFit
End Sub
Sub ProcessTaskFolders(ByVal objCurFolder As Outlook.Folder)
Dim objTask As Outlook.TaskItem
Dim strStatus As String
Dim objSubfolder As Outlook.Folder
'Count tasks by status
For Each objTask In objCurFolder.Items
Select Case objTask.Status
Case olTaskNotStarted
strStatus = "Not Started"
If objDictionary.Exists(strStatus) Then
objDictionary(strStatus) = objDictionary(strStatus) + 1
Else
objDictionary.Add strStatus, 1
End If
Case olTaskInProgress
strStatus = "In Progress"
If objDictionary.Exists(strStatus) Then
objDictionary(strStatus) = objDictionary(strStatus) + 1
Else
objDictionary.Add strStatus, 1
End If
Case olTaskComplete
strStatus = "Completed"
If objDictionary.Exists(strStatus) Then
objDictionary(strStatus) = objDictionary(strStatus) + 1
Else
objDictionary.Add strStatus, 1
End If
Case olTaskWaiting
strStatus = "Waiting on someone else"
If objDictionary.Exists(strStatus) Then
objDictionary(strStatus) = objDictionary(strStatus) + 1
Else
objDictionary.Add strStatus, 1
End If
Case olTaskDeferred
strStatus = "Deferred"
If objDictionary.Exists(strStatus) Then
objDictionary(strStatus) = objDictionary(strStatus) + 1
Else
objDictionary.Add strStatus, 1
End If
End Select
Next
'Process all subfolders recursively
If objCurFolder.Folders.Count > 0 Then
For Each objSubfolder In objCurFolder.Folders
Call ProcessTaskFolders(objSubfolder)
Next
End If
End Sub
- Shundan so'ng, birinchi pastki dasturni bosing va "F5" tugmasini bosing.
- Birdaniga, so'l tugallangach, quyidagi skrinshot kabi yangi Excel ish varag'i ko'rsatiladi. Unda turli maqomlardagi vazifalar soni mavjud.
Outlook atrofidagi tuzoqlardan ehtiyot bo'ling
Outlook atrofida juda ko'p xavf-xatarlar mavjud, jumladan, viruslar, inson xatolari, dasturiy ta'minotdagi nosozliklar, shuningdek apparatdagi nosozliklar va hokazo. Shuning uchun, qimmatli Outlook ma'lumotlaringizni yo'qotishni xohlamasangiz, doimo ehtiyot bo'lishingiz kerak. Oddiy qilib aytganda, siz hech qachon elektron pochta xabarlarida noma'lum qo'shimchalar yoki shubhali havolalarni yuklab olmaysiz. Bundan tashqari, iloji bo'lsa, ajoyib Outlook tuzatish yordam dasturini saqlash tavsiya etiladi, masalan DataNumen Outlook Repair, yaqin atrofda, o'rniga butunlay tayanib pochta qutisini tuzatish vositasi.
Muallif kirish:
Shirli Chjan ma'lumotlarni qayta tiklash bo'yicha mutaxassis DataNumenMa'lumotlarni qayta tiklash texnologiyalari bo'yicha jahon yetakchisi bo'lgan , Inc sql-ni tiklash va Outlook ta'mirlash dasturiy mahsulotlar. Qo'shimcha ma'lumot olish uchun tashrif buyuring www.datanumen.com


