发送Outlook Taskitem后运行Excel VBA代码

时间:2018-04-25 17:09:38

标签: excel vba excel-vba outlook

我希望使用Excel VBA来识别用户发送Outlook任务项目的时间(单击任务项目上的"发送"按钮)然后执行给定的宏。

编程必须全部在Excel中。

我发现代码可以识别Outlook" email"发送后,运行特定的宏。我已经改变它但它不起作用。

它在Excel中的类模块中!姓名:" TaskItemSend"

Option Explicit

Private WithEvents mOutlook As Outlook.Application
Private WithEvents mTaskItem As Outlook.TaskItem

Private Sub Class_Initialitze()
    Set mOutlook = New Outlook.Application
End Sub

Public Sub CreateAndDisplayTaskItem()
    Set mTaskItem = mOutlook.CreateItem(3)
    mTaskItem.To = "some@address.com"
    mTaskItem.Subject = "Test"
    mTaskItem.Body = "Test Body"
    mTaskItem.Display
End Sub

Private Sub mTaskItem_Send(Cancel As Boolean)
    'run specific code
End Sub 

Private Sub Class_Terminate()
    Set mTaskItem = Nothing
    If Not mOutlook Is Nothing Then mOutlook.Quit
    Set mOutlook = Nothing
End Sub

我在一个普通模块中写道:

Public c As TaskItemSend

Sub Test()
    Dim c As TaskItemSend
    Set c = New TaskItemSend
    c.CreateAndDisplayTaskItem
End Sub

我得到:运行时错误91对象变量或未设置块变量

0 个答案:

没有答案