<pre><code class="lang-auto">Sub SnoozedReminders()
' http://www.jpsoftwaretech.com/check-your-outlook-reminders-in-vba/
Dim MyReminder As Outlook.Reminder
Dim MyReminders As Outlook.Reminders
Dim Report As String
Dim i As Long
Set MyReminders = Outlook.Reminders
i = 0
For Each MyReminder In MyReminders
If HasReminderFired(MyReminder) = True Then
i = i + 1
Report = Report & i & ": " & MyReminder.Caption & vbCr & _
" Snoozed to " & MyReminder.NextReminderDate & vbCr & vbCr
End If
Next MyReminder
CreateReportAsEmail "Snoozed Items", Report
End Sub
Function HasReminderFired(rmndr As Outlook.Reminder) As Boolean
HasReminderFired = (rmndr.OriginalReminderDate <> rmndr.NextReminderDate)
End Function
' VBA SubRoutine which displays a report inside an email
' Programming by Greg Thatcher, http://www.GregThatcher.com
Public Sub CreateReportAsEmail(Title As String, Report As String)
On Error GoTo On_Error
Dim Session As Outlook.Namespace
Dim mail As MailItem
Dim MyAddress As AddressEntry
Dim Inbox As Outlook.folder
Set Session = Application.Session
Set Inbox = Session.GetDefaultFolder(olFolderInbox)
Set mail = Inbox.items.Add("IPM.Mail")
mail.Subject = Title
mail.Body = Report
mail.Save
mail.Display
Exiting:
Set Session = Nothing
Set Inbox = Nothing
Set mail = Nothing
Exit Sub
On_Error:
MsgBox "error=" & Err.Number & " " & Err.Description
Resume Exiting
End Sub
</code></pre>
<p>Si vous n’êtes pas familier avec VBA, consultez <a href="http://www.slipstick.com/developer/how-to-use-outlooks-vba-editor/">la page d’explication de Slipstick</a>. Vous y trouverez des informations sur :</p>
<ul>
<li>
<p>les paramètres de sécurité des macros ;</p>
</li>
<li>
<p>où placer le code (vous pouvez utiliser un module standard avec Insert | Module) ; et</p>
</li>
<li>
<p>comment créer un bouton.</p>
</li>
</ul>