How to convert multiple appointments to tasks quickly in Outlook?
In this article, I will talk about how to convert an appointment or multiple appointments to tasks quickly and easily in Outlook.
To convert one appointment to task, you just need to drag the appointment to task folder, please do as this:
1. In the Calendar window, select the appointment item that you need to convert to task and then drag and drop it to the Tasks icon at the bottom of navigation pane as following screenshot shown:
2. Then a new Task window is displayed, please click Save & Close button to save this appointment as task. See screenshot:
If you have multiple appointments need to be converted to tasks, the below VBA code can do you a favor, please do as follows:
1. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
2. And then, click Insert > Module, copy and paste below code into the opened blank module, see screenshot:
VBA code: Convert multiple appointments to tasks
Sub ConvertAppointmentsToTasks() Dim xItemCollection As VBA.Collection Dim xActiveWindow As Object Dim xItem As Object Dim xSelection As Outlook.Selection Dim xTaskFolder As Outlook.Folder Dim xAppointmentItem As Outlook.AppointmentItem Dim xTaskItem As Outlook.TaskItem On Error Resume Next Set xItemCollection = New VBA.Collection Set xActiveWindow = Outlook.Application.ActiveWindow If TypeOf xActiveWindow Is Inspector Then Set xItem = xActiveWindow.CurrentItem If xItem.Class = olAppointment Then xItemCollection.Add xItem Else Set xSelection = xActiveWindow.Selection If xSelection Is Nothing Then Exit Sub For Each xItem In xSelection If xItem.Class = olAppointment Then xItemCollection.Add xItem Next End If Set xTaskFolder = Application.Session.PickFolder If xTaskFolder Is Nothing Then Exit Sub For Each xAppointmentItem In xItemCollection Set xTaskItem = xTaskFolder.Items.Add(olTaskItem) With xTaskItem .StartDate = Format(xAppointmentItem.Start, "Short Date") .DueDate = Format(xAppointmentItem.End, "Short Date") .Subject = xAppointmentItem.Subject & " (From Appt)" .Categories = xAppointmentItem.Categories .Body = xAppointmentItem.Body .Save .Display End With Next End Sub
3. Then select the appointments that you want to convert to task, and then click Run Macro button to run this code, see screenshot:
4. And then a Select Folder dialog will pop out, select a Tasks folder where you want to save the converted results, see screenshot:
5. Then click OK button, and all selected appointments will be created as tasks, and then you should save and close the Task window one by one, see screenshot:
6. Then, you can go to the Task folder, all the selected appointments have been saved as new tasks, see screenshot:
Recommended Productivity Tools
- Complicated and repeated operations can be done a one-time processing in seconds.
- Forward multiple emails individually with one-click, and auto forward by rules.
- Auto CC/BCC every sending email and easy for customizing rules, and auto reply without requiring exchange server.
- Powerful junk emails filter, remove duplicate emails, reply with attachment, bunch of one-click operations, and so on...
- 60-day unlimited free trial. 60-day money back guarantee. 2 years free upgrade and support. Buy once, use forever.