【发布时间】:2020-10-18 21:02:02
【问题描述】:
我们从共享的 Outlook 地址发送电子邮件 现在我想知道我每天回复多少封电子邮件,因为我的老板想让我做更多的工作,但我想在同意接受更多工作之前了解我与同事的实际比较
想知道是否可以计算我们每天发送多少封电子邮件,然后根据我们的签名进行过滤
谢谢
【问题讨论】:
我们从共享的 Outlook 地址发送电子邮件 现在我想知道我每天回复多少封电子邮件,因为我的老板想让我做更多的工作,但我想在同意接受更多工作之前了解我与同事的实际比较
想知道是否可以计算我们每天发送多少封电子邮件,然后根据我们的签名进行过滤
谢谢
【问题讨论】:
最好和最简单的方法是处理ItemSend 事件,该事件在发送 Microsoft Outlook 项目时触发,或者由用户通过检查器(在检查器关闭之前,但在用户单击发送之后)按钮)或在程序中使用 Outlook 项目(如 MailItem)的 Send 方法时。
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
因此,每次触发 ItemSend 事件时,我们都可以增加计数器。
另一种可能的解决方案是使用Find/FindNext 或Restrict 方法来获取消息正文中包含特定关键字的项目数。在以下文章中阅读有关它们的更多信息:
【讨论】:
如果签名包含用户独有的内容,只需使用Items.Find/FindNext 或Items.Restrict 在“已发送邮件”文件夹中搜索Body 属性中的匹配项。
【讨论】: