我已经查看过以前的答案,并在下面尝试了很多变化,但我似乎无法让它发挥作用。
基本上,下面脚本的目的是将Outlook提醒转换为电子邮件。
但是,我似乎无法以编程方式解除提醒。我已经查看过这些问题的先前答案(例如this one)并尝试实施这些问题,但他们似乎没有在此配置中取得成功。
' declare this object withEvents displaying all the events
Private WithEvents olRemind As Outlook.Reminders
Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Dim objRem As Reminder
Dim olRemind As Reminders
Set olRemind = Outlook.Reminders
Set objMsg = Application.CreateItem(olMailItem)
objMsg.To = "*ADDRESS REMOVED FROM EXAMPLE*"
objMsg.subject = "MHReminder: " + Item.subject
objMsg.Body = Item.Body
Set objMsg.SaveSentMessageFolder = Session.GetDefaultFolder(olFolderDeletedItems)
objMsg.Send
Set objMsg = Nothing
End Sub
Private Sub olRemind_BeforeReminderShow(Cancel As Boolean)
For Each objRem In olRemind
If objRem.IsVisible = True Then
objRem.Dismiss
Cancel = True
End If
Exit For
Next objRem
End Sub
我更多的是" kludge-and-splice"程序员比真正的程序员,所以会很高兴有人指出我的(希望是明显的)错误。
谢谢...
答案 0 :(得分:0)
您正在查看第一个找到的提醒,然后退出
For Each objRem In objRems
If objRem.Caption = "TESTING" Then ' <--
If objRem.IsVisible Then
objRem.Dismiss
End If
Exit For
End If
Next objRem
如您在Dismiss Outlook reminder找到的示例中所示,您将需要类似
的内容Category
答案 1 :(得分:0)
BeforeReminderShow事件处理程序中的取消参数需要为ByRef
。