KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment empêcher Outlook de programmer ses rappels trop tôt ou trop tard ?

AuteurKelly Date de modification

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.

Office Tab - Activez l’édition et la navigation par onglets dans Microsoft Office, pour un travail simplifié
Débloquez Kutools pour Outlook dès maintenant et profitez de plus de 100 fonctionnalités avec un accès illimité à vie
Optimisez votre Outlook 2024 - 2010 ou Outlook 365 grâce à ces fonctions avancées. Profitez de 100+ fonctionnalités puissantes et améliorez votre expérience e-mail !

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.

la capture d’écran de l’étape concernant la prévention des rappels Outlook trop tôt ou trop tard

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 !

🤖Kutools IA:Utilise une technologie d’intelligence artificielle avancée pour gérer vos e-mails sans effort, notamment en répondant, résumant, optimisant, développant, traduisant et rédigeant des messages.

📧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 !

Débloquez Kutools pour Outlook instantanément en un seul clic ! Ne perdez plus une seconde : téléchargez dès maintenant et boostez votre efficacité !

kutools for outlook features1kutools for outlook features2

🚀 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