Работа с задачами Outlook из Excel

25 апреля 2013, VBA, Konstantin

Получать информацию о выполненных и будущих задачах, распланированных в соответствующем разделе Outlook, можно с помощью кода из этой статьи. Может, например, пригодиться для автоматического формирования перечня задач находящихся в работе и уже исполненных.

Private Sub LoadTask()
Dim fTasks As Outlook.MAPIFolder
Dim Tasks As Outlook.Items
Set fTasks = Outlook.GetNamespace("MAPI").GetDefaultFolder(olFolderTasks)
Set Tasks = fTasks.Items
Tasks.Sort "[StartDate]", True
For i = 1 To Tasks.Count
	'Тема задачи
	ActiveSheet.Range("A" & i).Value = _
	   Replace(Trim(Tasks(i).Subject), Chr(10), " ")
	'Статус задчи
	If Tasks(i).Complete Then 
		ActiveSheet.Range("B" & i).Value = "Завершена" 
	Else
		ActiveSheet.Range("B" & i).Value = "В работе" 
	End If
	'Тип задчи
	If Tasks(i).IsRecurring Then 
		ActiveSheet.Range("C" & sr).Value = "Регулярная задача"
	Else
		ActiveSheet.Range("C" & sr).Value = "Единичная задача"
	End If
	ActiveSheet.Range("D" & sr).Value = Tasks(i).StartDate
	'Срок окончания задачи
	ActiveSheet.Range("E" & sr).Value = Tasks(i).DueDate 
	'Дата выполнения
	ActiveSheet.Range("F" & sr).Value = Tasks(i).DateCompleted
	'Описание задачи 
	ActiveSheet.Range("G" & sr).Value = Tasks(i).Body 
	ActiveSheet.Range("H" & sr).Value = Tasks(i).Owner
Next i
End Sub


Order_macros

Теги:
 

Комментировать