'Globals Dim oOutlook Dim oNamespace Dim oFolder Dim aItems Dim oTask Dim szBuffer Dim aPriority Dim aStatus Dim aPriorityColors Dim aStatusColors aPriority = Array("Low", "Medium", "High") aStatus = Array("Not Started", "In Progress", "Completed", "Waiting on someone else", "Deferred") aPriorityColors = Array("none", "yellow", "red") aStatusColors = Array("red", "green", "green", "yellow", "blue") 'Constants Const olMailItem = 0 Const olTaskItem = 3 Const olFolderTasks = 13 'Create Outlook, Namespace, Folder Objects and Task Item Set oOutlook = CreateObject("Outlook.application") Set oNamespace = oOutlook.GetNameSpace("MAPI") Set oFolder = oNamespace.GetDefaultFolder(olFolderTasks) Set aItems = oFolder.Items szBuffer = "" & vbCrLf &"" & vbCrLf 'Build Table nCount = 0 For Each oTask in aItems 'oTask has the following properties - http://msdn2.microsoft.com/en-us/library/aa211067(office.11).aspx If oTask.Sensitivity=0 Then 'only non-private tasks szBuffer = szBuffer & "" szBuffer = szBuffer & "" szBuffer = szBuffer & "" szBuffer = szBuffer & "" szBuffer = szBuffer & "" if oTask.DueDate = "1/1/4501" Then 'Outlook stupidity szBuffer = szBuffer & "" else szBuffer = szBuffer & "" end if szBuffer = szBuffer & "" szBuffer = szBuffer & "" szBuffer = szBuffer & "" End If Next Set oMsg = oOutlook.CreateItem(olMailItem) oMsg.To = "Big Brother" oMsg.Subject = "Status Report - " & Date() oMsg.Display szBuffer = replace(szBuffer,vbCrLF,"
") oMsg.HTMLBody = szBuffer 'Clean up Set oFolder = Nothing Set oNamespace = Nothing set oOutlook = Nothing set oMsg = Nothing
ProjectTaskPriorityStatusDue DateStatusNotes
" & oTask.BillingInformation & "" & oTask.Subject & "" & aPriority(oTask.Importance) & "" & aStatus(oTask.Status) & "None" & oTask.DueDate & "" & oTask.PercentComplete & "" & oTask.Body & "