若要在 Microsoft Visual Basic 或其他应用程序中的 Microsoft Visual Basic for Applications 中创建 Microsoft Outlook 对象的事件处理器,需要完成以下四步:
了解在 Outlook Visual Basic for Applications 中处理事件。
在 Visual Basic 或 Visual Basic for Applications 代码中使用 Outlook 对象之前,必须首先在“引用”对话框中设置对 Outlook 对象模型的引用。有关使用此对话框的详细信息,请参阅所使用的编程环境的联机帮助。
引用对象模型库后,必须声明变量来引用所需的对象。可以在将使用该对象的模块(即包含事件处理器过程的模块)中声明变量,但通常在类模块中声明变量,以便该变量可在程序中的任何模块中使用。
例如,若要在类模块中声明 Application 对象的对象变量,可以使用以下的代码:
Public WithEvents myOlApp As Outlook.Application
必须使用 WithEvents 关键字指定该对象变量将用于响应由对象触发的事件。
在以事件方式声明新对象后,它将显示在类模块“代码”窗口的“对象”列表中,您可以从“过程/事件”列表中选择对象的事件过程。例如,当为声明为 myOlApp 的 Application 对象选择 ItemSend 事件时,以下空过程将显示在“代码”窗口中。
Private Sub myOlApp_ItemSend(Item as Object, Cancel as Boolean)
End Sub
在过程运行之前,必须将声明的对象(在本示例中为 myOlApp)与 Application 对象相连接。如果在名为 EventClassModule 的类模块中声明对象,则可以在任何模块中使用以下代码:
Dim myClass as New EventClassModule
Sub Register_Event_Handler()
Set myClass.myOlApp = CreateObject("Outlook.Application")
End Sub
当 Register_Event_Handler
过程运行后,窗体或类模块中的 myOlApp 对象指向 Outlook Application 对象,并且将在事件发生时运行该事件过程。