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.
Method 1: Set View Filters & Mark Complete Manually
- To start with, launch Outlook and turn to Tasks pane.
- Then open a specific Tasks folder.
- Next switch to “View” tab and hit “View Settings” button.
- In the new popup dialog box, click “Filter”. This will open a second dialog box.
- Subsequently, switch to “Advanced” tab and then add a specific filter – “Due Date on or before Yesterday”, like the following image.
- After that, click a series of “OK” to activate the new view filters and back to main Tasks pane.
- 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.
- Lastly, click on the “Mark Complete” button under “Home” tab.
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
- At the very outset, press “Alt + F11” key buttons in main Outlook window.
- 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) Next Next 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 objTask.MarkComplete End If Next End If 'Process all Task folders recursively If objCurrentFolder.folders.Count > 0 Then For Each objSubfolder In objCurrentFolder.folders Call ProcessFolders(objSubfolder) Next End If End Sub
- After that, you should ensure Outlook permits macros in macro settings.
- Lastly, you can have a try. Click into “BatchMarkAllOverdueTasksComplete” subroutine and press F5 key to run it.
- 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.
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