我正在尝试在用户保存时在特定商店中创建新的Outlook项目。通常,如果有多个帐户,则在创建新项目时(例如,按Ctrl + Shift + K执行任务),新项目将在活动帐户的默认文件夹中创建。
我尝试拦截新物品的检查员并移动它,但它没有效果。这是代码的要点(省略了非新项目的检查):
Dim WithEvents inspectors As Outlook.inspectors
Private Sub Application_Startup()
Set inspectors = Application.inspectors
End Sub
Private Sub inspectors_NewInspector(ByVal Inspector As Inspector)
Dim item As Object
Set item = Inspector.CurrentItem
If item Is Nothing Then Exit Sub
If item.Class <> olTask Then Exit Sub
item.Move Application.GetNamespace("MAPI").GetDefaultFolder(olFolderTasks)
End Sub
不幸的是,Move方法没有效果。有什么想法吗?
答案 0 :(得分:1)
您无法移动未保存的项目。你是如何创造这个项目的?
使用Items.Add
方法在特定文件夹中添加项目(即创建项目)。如果您使用的是CreateItem方法,则始终会在该项类型的默认文件夹中创建它。
我没有尝试使用现有功能来尝试创建任务(我不确定是否可行),我认为你最好创建一个在你想要的文件夹中创建任务的宏,然后添加宏到工具栏按钮。或者您可以先尝试保存该项目,然后再移动它。请注意,您当前的代码会将项目移动到默认的“任务”文件夹。