Ինչպես արագ հաշվել բոլոր առաջադրանքները ըստ կարգավիճակի ձեր Outlook-ում

Կիսվել հիմա ՝

Առաջադրանքները կարող են ունենալ հինգ կարգավիճակ՝ «Ոչ Սtarted», «Ընթացքի մեջ», «Ավարտված է», «Սպասում եմ ուրիշին» և «Հետաձգված»: Եթե ​​ցանկանում եք արագորեն հաշվել բոլոր առաջադրանքները ըստ կարգավիճակի, կարող եք օգտագործել այս հոդվածում ներկայացված եղանակը:

Outlook-ն աջակցում է օգտատերերին առաջադրանքներին կամ դրոշակավորված տարրերին կարգավիճակ տալ: Կա հինգ կարգավիճակ՝ համապատասխանաբար «Ոչ Սtarted», «Ընթացքի մեջ», «Ավարտված է», «Սպասում եմ ուրիշին» և «Հետաձգված»: Հավանաբար, դուք ունեք մեծ քանակությամբ առաջադրանքներ ձեր Outlook-ում և դրանք տարբեր կարգավիճակներում են: Այժմ, եթե ցանկանում եք հաշվել բոլոր առաջադրանքները ըստ կարգավիճակի, կարող եք օգտագործել հետևյալ կերպ.Առաջադրանքի կարգավիճակը

Արագ հաշվել բոլոր առաջադրանքները ըստ կարգավիճակի

  1. Նախ, գործարկեք Outlook VBA խմբագրիչը՝ հղում անելով «Ինչպես գործարկել VBA կոդը ձեր Outlook- ում".
  2. Այնուհետև VBA խմբագրիչում միացրեք հղումը «MS Excel Object Library», ինչպես նաև «MS Scripting Runtime»՝ համաձայն «Ինչպես ավելացնել օբյեկտ Library Հղում VBA- ում".
  3. Հաջորդը, պատճենեք հետևյալ կոդը չօգտագործված մոդուլի մեջ:
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

VBA կոդ - Հաշվել առաջադրանքները ըստ կարգավիճակի

  1. Դրանից հետո սեղմեք առաջին ենթածրագրի մեջ և սեղմեք «F5» ստեղնը:
  2. Միանգամից, երբ մակրոն ավարտվի, Excel-ի նոր աշխատաթերթը կցուցադրվի, ինչպես ստորև ներկայացված սքրինշոթը: Այն պարունակում է տարբեր կարգավիճակներում առաջադրանքների թիվը:Առաջադրանքների քանակը տարբեր կարգավիճակներում

Զգուշացեք Outlook-ի շուրջ եղած որոգայթներից

Outlook-ի շուրջ մեծ քանակությամբ ռիսկեր կան, ներառյալ վիրուսները, մարդկային սխալները, ծրագրային ապահովման սխալները, ինչպես նաև ապարատային սխալները և այլն: Հետևաբար, եթե չեք ցանկանում կորցնել ձեր արժեքավոր Outlook տվյալները, դուք պետք է միշտ զգույշ լինեք: Պարզ ասած, դուք երբեք չպետք է ներբեռնեք անհայտ հավելվածներ կամ կասկածելի հղումներ նամակներում: Բացի այդ, հնարավորության դեպքում, խորհուրդ է տրվում պահպանել ուշագրավ Outlook fix կոմունալ, ինչպես օրինակ DataNumen Outlook Repair, մոտակայքում, ամբողջովին ապավինելու փոխարեն մուտքի արկղի վերանորոգման գործիք.

Հեղինակի ներածություն.

Shirley Zhang- ը տվյալների վերականգման փորձագետ է DataNumen, Inc., որը տվյալների վերականգման տեխնոլոգիաների համաշխարհային առաջատարն է, այդ թվում վերականգնել sql և հեռանկարների նորոգման ծրագրակազմի արտադրանքները: Լրացուցիչ տեղեկությունների համար այցելեք www.datanumen.com

Կիսվել հիմա ՝

Comments փակվում են: