有人在我发送电子邮件时知道如何触发VBA。
我试图从“在发送邮件时应用规则”的“规则向导”中寻找选项,但是有脚本选项。
欢呼
答案 0 :(得分:0)
当然,您可以分配一个VBA子以在触发规则时运行。子项应采用单个参数来表示要发送的项目:
Public Sub Test(item as Outlook.MailItem)
' run your code here
End Sub
您可以将事件处理程序添加到Application
类的ItemSend事件中。每当用户通过检查器发送Microsoft Outlook项目(在关闭检查器之前,但在用户单击“发送”按钮之后)或使用Outlook项目的Send方法(例如MailItem)发送时,都会触发该事件。在一个程序中。
Public WithEvents myOlApp As Outlook.Application
Public Sub Initialize_handler()
Set myOlApp = Outlook.Application
End Sub
Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim prompt As String
prompt = "Are you sure you want to send " & Item.Subject & "?"
If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then
Cancel = True
End If
End Sub
您编写事件过程(也称为事件处理程序)以响应Microsoft Outlook中发生的事件。例如,您可以编写一个事件过程,以在Outlook启动时自动最大化浏览器窗口。
事件与特定对象相关联。 Application
对象是最顶层的对象,并且始终可用(也就是说,不必创建)。您只需在左侧列表中选择Application
,然后在右侧列表中选择事件,即可在ThisOutlookSession
模块窗口中添加Application
事件过程。