我需要一些帮助。我已经设法使用VB和SendItem在outlook中创建一个任务。我的问题是我正在使用的代码是创建两个任务而不仅仅是我想要的代码。
我尝试删除.Save
因为我认为这是原因但它仍然添加了两个任务。我已经在代码中添加了断点,以确保它不会因某些不明原因而循环两次并且只执行一次。
非常感谢有人告诉我显而易见的
代码段:
`If bNotFount = False Then
Set Ns = Application.GetNamespace("MAPI")
Set ItemT = GetCurrentItem()
Set taskFolder = Ns.GetDefaultFolder(olFolderTasks)
Set olTask = Ns.GetDefaultFolder(olFolderTasks).Items.Add(olTaskItem)
With olTask
.Subject = ItemT.Subject
.Attachments.Add ItemT
.Body = ItemT.Body
.DueDate = Now + 1
.Move taskFolder
.Save
.Display 'show the task to add notes
End With
End If'
答案 0 :(得分:0)
您无需将其移至默认任务文件夹,因为无论如何都要将其保存在那里。
只需删除.Move taskFolder
行。
我更新了您的代码:
Private Sub Application_ItemSend(Item As Object, ByRef Cancel As Boolean) Handles Application.ItemSend
Dim ns As Outlook.NameSpace
Dim taskFldr As Outlook.Folder
Dim olTask As Outlook.TaskItem
' If bNotFount = False Then
Ns = Application.GetNamespace("MAPI")
taskFldr = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderTasks)
olTask = taskFldr.Items.Add
With olTask
.Subject = Item.Subject
.Attachments.Add(Item)
.Body = Item.Body
.DueDate = Now + 1
.Save()
.Display() 'show the task to add notes
End With
' End If
End Sub