2 Methods to Batch Mark All Overdue Tasks Complete in Your Outlook

Sometimes, you may forget marking tasks complete, such that there may be many overdue tasks in your Outlook Tasks folder. In this case, you can use either way introduced in this article to batch mark all overdue tasks complete in one go.

As you can see, once a task becomes overdue, it will be shown in red color, which is quite striking. However, most of time, why there are so many overdue tasks in your Outlook is that you forget marking them complete. Therefore, often, you may wish to batch mark all such overdue tasks complete. To look at this issue, here we will teach you 2 means.

Batch Mark All Overdue Tasks Complete in Your Outlook

Method 1: Set View Filters & Mark Complete Manually

  1. To start with, launch Outlook and turn to Tasks pane.
  2. Then open a specific Tasks folder.
  3. Next switch to “View” tab and hit “View Settings” button.
  4. In the new popup dialog box, click “Filter”. This will open a second dialog box.
  5. Subsequently, switch to “Advanced” tab and then add a specific filter – “Due Date on or before Yesterday”, like the following image.Set View Filters
  6. After that, click a series of “OK” to activate the new view filters and back to main Tasks pane.
  7. Now you will see that only overdue tasks show in the list. You can click one of them and then press “Ctrl + A” to select all of them.
  8. Lastly, click on the “Mark Complete” button under “Home” tab.Mark Complete

By this means, if you have many Tasks folder, you should manually set view filters on each Tasks folder respectively. It will be very tedious. Therefore, it’s suggested to use the following means, which will quickly mark all overdue tasks in all Tasks folder complete in bulk.

Method 2: Mark Complete with Outlook VBA

  1. At the very outset, press “Alt + F11” key buttons in main Outlook window.
  2. Then in the Outlook VBA editor, copy and paste the following VBA codes into an empty module window.
Sub BatchMarkAllOverdueTasksComplete()
    Dim objStores As Outlook.Stores
    Dim objStore As Outlook.Store
    Dim objPSTFile As Outlook.Folder
    Dim objFolders As Outlook.folders
    Dim objFolder As Object
    Set objStores = Application.Session.Stores
    'Process All PST Files
    For Each objStore In objStores
        Set objPSTFile = objStore.GetRootFolder
        For Each objFolder In objPSTFile.folders
            Call ProcessFolders(objFolder)
End Sub

Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
    Dim obTasks As Outlook.Items
    Dim objTask As Outlook.TaskItem
    Dim objSubfolder As Outlook.Folder
    'Find the overdue tasks and mark complete
    If objCurrentFolder.DefaultItemType = olTaskItem Then
       Set objTasks = objCurrentFolder.Items
       For Each objTask In objTasks
           If (objTask.DueDate < Date) And (objTask.Complete = False) Then
           End If
    End If
    'Process all Task folders recursively
    If objCurrentFolder.folders.Count > 0 Then
       For Each objSubfolder In objCurrentFolder.folders
           Call ProcessFolders(objSubfolder)
    End If
End Sub

VBA Code - Batch Mark All Overdue Tasks Complete

  1. After that, you should ensure Outlook permits macros in macro settings.
  2. Lastly, you can have a try. Click into “BatchMarkAllOverdueTasksComplete” subroutine and press F5 key to run it.
  3. At once, all the overdue tasks in all Tasks folder will be marked complete in batches.

Tips for Avoiding PST Data Loss

Due to the fact that Outlook PST file is prone to error and corruption, it demands you to make great efforts to safeguard your PST data. First of all, you should back up PST file on a regular basis, which will save you from to repair PST in the event of PST damage. Besides, it is also prudent to prepare a potent fix tool in advance, like DataNumen Outlook Repair.

Author Introduction:

Shirley Zhang is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including fix mdf and outlook repair software products. For more information visit www.datanumen.com

2 responses to “2 Methods to Batch Mark All Overdue Tasks Complete in Your Outlook”

  1. Dim obTasks As Outlook.Items

    should be

    Dim objTasks As Outlook.Items (missing “j”)

    Thanks for the macro!

Leave a Reply

Your email address will not be published. Required fields are marked *