Comment empêcher Outlook de programmer ses rappels trop tôt ou trop tard ?
Par exemple, vous travaillez tous les jours de 9 h à 18 h, mais vous prenez actuellement un rendez-vous à 10 h et définissez un rappel deux heures avant dans Outlook. Le rappel se déclenchera alors à 8 h, soit avant le début de votre journée de travail. Dans certains cas particuliers, il pourrait même retentir en pleine nuit — une situation particulièrement gênante. De nombreux utilisateurs d’Outlook souhaitent justement éviter que les rappels ne sonnent trop tôt ou trop tard. Je vais donc vous présenter une macro VBA capable de résoudre ce problème directement dans Outlook.
- Améliorez votre productivité par e-mail grâce à la technologie d’IA : répondez rapidement aux messages, rédigez de nouveaux e-mails, traduisez des contenus et bien plus encore.
- Automatisez l’envoi d’e-mails avec CC/BCC automatique, Transfert automatique selon des règles prédéfinies, et envoyez une Réponse automatique (Absent du bureau) sans avoir besoin d’un serveur Exchange…
- Recevez des rappels tels que Demander lors de la réponse à un email avec moi en copie cachée (CCi) lorsque vous répondez à tous alors que vous figurez en copie cachée (BCC), ainsi que Rappel en cas de pièce jointe manquante pour les pièces jointes oubliées…
- Améliorez l’efficacité de vos e-mails avec Répondre avec pièces jointes (tout), Ajout automatique de la formule de politesse ou de la date et de l’heure dans la signature ou l’objet, Répondre à plusieurs e-mails...
- Simplifiez l’envoi d’e-mails avec Rappeler l'email, Outils de pièces jointes (compresser tout, enregistrer automatiquement tout…), Supprimer les doublons et Rapport rapide…
Pour empêcher Outlook de rappeler trop tôt ou trop tard, procédez comme suit :
Étape 1 : Appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
Étape 2 : Développez l’élément Objets Microsoft Outlook dans le volet gauche, puis collez la macro VBA suivante dans ThisOutlookSession.
VBA : Empêcher les rappels trop tôt ou trop tard dans Outlook
Public WithEvents g_CalendarItems As Outlook.Items
Public Sub Application_Startup()
Set g_CalendarItems = Outlook.Session.GetDefaultFolder(olFolderCalendar).Items
End Sub
Private Sub g_CalendarItems_ItemAdd(ByVal Item As Object)
CheckReminder Item
End Sub
Private Sub g_CalendarItems_ItemChange(ByVal Item As Object)
CheckReminder Item
End Sub
Sub CheckReminder(ByVal Item As Object)
On Error GoTo ProcError
Dim strProcName As String
strProcName = "CheckReminder"
reminderMaxHour = 20
reminderMinHour = 9
Dim aAptItem As Outlook.AppointmentItem
Set aAptItem = Item
If aAptItem.ReminderSet Then
Dim reminderDate As Date
reminderDate = aAptItem.Start - aAptItem.ReminderMinutesBeforeStart / (24 * 60)
reminderHour = (reminderDate - Int(reminderDate)) * 24
tolerance = 0.01 ' avoid floating point small diffs (little bit less than a min)
If reminderHour < reminderMinHour - tolerance Or reminderHour > reminderMaxHour + tolerance Then
' best guess, first try to advance to next minHour
reminderDateSuggestion = reminderDate + (reminderMinHour - reminderHour) / 24
' verify if first guess is valid
If reminderHour < reminderMinHour - tolerance And reminderDateSuggestion <= aAptItem.Start Then
' OK, first guess is valid, keep it
ElseIf reminderHour > reminderMaxHour Then
' go back to max hour (same day)
reminderDateSuggestion = reminderDate - (reminderHour - reminderMaxHour) / 24
Else
' go back to max hour (previous day)
reminderDateSuggestion = reminderDate - (reminderHour + 24 - reminderMaxHour) / 24
End If
rep = MsgBox("The Reminder time is out of specified working period. Would you like to change the Reminder time?" , vbQuestion + vbYesNoCancel)
If rep = vbCancel Then
aAptItem.Display
ElseIf rep = vbYes Then
aAptItem.ReminderMinutesBeforeStart = (aAptItem.Start - reminderDateSuggestion) * 24 * 60
aAptItem.Save
End If
End If
End If
ProcExit:
Exit Sub
ProcError:
MsgBox "Unanticipated error " & Err.Number & " " & Err.Description & vbCrLf & "In procedure: " & strProcName
End Sub
Remarque: Vous pouvez définir votre plage horaire de travail en modifiant les paramètres suivants dans le code VBA ci-dessus :
reminderMaxHour = 20
reminderMinHour = 9
Étape 3 : Enregistrez cette macro VBA, puis redémarrez Microsoft Outlook.
Désormais, lorsque vous créez un rendez-vous avec une heure de rappel située en dehors de la plage horaire que vous avez définie, une boîte de dialogue s’affiche pour vous avertir après avoir cliqué sur le bouton Enregistrer et fermer.

Si l’Heure de rappel est antérieure à l’heure minimale spécifiée (reminderMinHour), cliquez sur Oui dans la boîte de dialogue ; cela modifiera l’Heure de rappel afin que le rappel retentisse à l’heure minimale spécifiée (reminderMinHour).
Si l’Heure de rappel est postérieure à l’heure maximale spécifiée (reminderMaxHour), cliquez sur Oui dans la boîte de dialogue ; cela modifiera l’Heure de rappel afin que le rappel retentisse à l’heure maximale spécifiée (reminderMaxHour).
Remarque : Ce code VBA fonctionne parfaitement avec Outlook 2013, mais n’est pas compatible avec Outlook 2010 et 2007.
Meilleurs outils de productivité Office
Découvrez la toute nouvelle Kutools pour Outlook avec 100+ fonctionnalités incroyables !Cliquez pour télécharger dès maintenant !
📧Automatisation des e-mails : Réponse automatique (disponible pour POP et IMAP) / Planification de l’envoi d’e-mails / CC/BCC automatique selon des règles lors de l’envoi d’e-mails / Transfert automatique (règle avancée) / Ajout automatique de formules de politesse / Division automatique des e-mails à plusieurs destinataires en messages individuels...
📨Gestion des e-mails : Rappeler un e-mail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les e-mails en double / Recherche avancée / Organiser vos dossiers…
📁Pièces jointes Pro : Enregistrer en lot / Détacher en lot / Compresser en lot / Enregistrement automatique / Détachement automatique / Compression automatique…
🌟Magie de l’interface : 😊 Encore plus d’emojis jolis et stylés / Vous prévient à l’arrivée d’e-mails importants / Réduire Outlook au lieu de le fermer...
👍Merveilles en un clic : Répondre à tous avec pièces jointes / E-mails anti-hameçonnage / 🕘 Afficher le fuseau horaire – Heure actuelle de l’expéditeur…
👩🏼🤝👩🏻Contacts et calendrier : Créer en lot : ajouter un contact à partir des e-mails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire…
Utilisez Kutools dans votre langue préférée – compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de 40 autres langues !


🚀 Téléchargement en un clic — Obtenez tous les compléments Office
Fortement recommandé : Kutools for Office (5-en-1)
Un seul clic pour télécharger cinq programmes d’installationen une fois —Kutools pour Excel, Outlook, Word, PowerPointet Office Tab Pro.Cliquez pour télécharger dès maintenant !
- ✅Commodité en un clic : téléchargez les cinq packs d’installation en une seule action.
- 🚀Prêt à relever toutes vos tâches Office : installez les compléments dont vous avez besoin, exactement quand vous en avez besoin.
- 🧰Inclus: Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools for PowerPoint