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

Comment calculer et afficher les âges à partir des dates d’anniversaire dans Outlook ?

AuteurKelly Date de modification

Généralement, la date d’anniversaire d’un contact est automatiquement ajoutée à votre calendrier sous forme de rendez-vous annuel récurrent. Mais saviez-vous qu’il est possible de calculer l’âge de ce contact et de l’afficher directement dans la vue du calendrier ? Cet article vous présente une méthode VBA permettant de déterminer l’âge de chaque contact et de l’intégrer à l’objet du rendez-vous récurrent correspondant dans Outlook.

Calculer et afficher les âges à partir des dates d’anniversaire dans le calendrier Outlook

la capture d’écran du calcul de l’âge à partir des dates d’anniversaire dans Outlook

Calculer et afficher les âges à partir des dates d’anniversaire dans le calendrier Outlook

Pour calculer l’âge de chaque contact et afficher cet âge dans l’objet du rendez-vous récurrent associé dans le calendrier Outlook, procédez comme suit :

1. Ouvrez le dossier Calendrier par défaut, puis appuyez sur les touches « Alt » + « F11 » pour lancer la fenêtre « Microsoft Visual Basic pour Applications ».

2. Cliquez sur « Insertion » > « Module », puis collez le code VBA suivant dans la nouvelle fenêtre du module.

VBA : Calculer et afficher les âges des contacts dans le calendrier Outlook

Option Explicit
Public Sub UpdateAges()
Dim xOlApp As Outlook.Application
Dim xOlFolder As Outlook.Folder
Dim xOlItems As Outlook.Items
Dim xAppointmentItem As AppointmentItem
Dim xAge As Integer
Dim xOlProp As Outlook.UserProperty
Set xOlApp = Outlook.Application
Set xOlFolder = Session.GetDefaultFolder(olFolderCalendar)
Set xOlItems = xOlFolder.Items
For Each xAppointmentItem In xOlItems
If (InStr(1, xAppointmentItem.Subject, "Birthday") Or InStr(1, xAppointmentItem.Subject, "Anniversary")) And xAppointmentItem.IsRecurring = True Then
With xAppointmentItem
If xAppointmentItem.UserProperties("Original Subject") Is Nothing Then
Set xOlProp = xAppointmentItem.UserProperties.Add("Original Subject", olText, True)
xOlProp.Value = .Subject
.Save
End If
xAge = DateDiff("yyyy", .Start, Date)
.Subject = .UserProperties("Original Subject") & " (" & xAge & " in " & Format(Date, "yyyy") & ")"
.Save
End With
End If
Next
Set xAppointmentItem = Nothing
Set xOlItems = Nothing
Set xOlFolder = Nothing
Set xOlApp = Nothing
End Sub

3. Appuyez sur « F5 » ou cliquez sur le bouton « Exécuter » pour lancer votre code VBA.

Lorsque vous revenez au calendrier par défaut, vous constatez que l’âge de chaque contact a été automatiquement calculé et s’affiche dans l’intitulé de son rendez-vous annuel d’anniversaire. Voir la capture d’écran :

la capture d’écran de l’étape concernant le calcul de l’âge à partir des dates d’anniversaire dans Outlook 1

Remarques :
(1) Dans l’objet du rendez-vous annuel d’anniversaire d’un contact, l’âge du contact est indiqué entre parenthèses, par exemple (41 en 2017), où 41 correspond à l’âge et 2017 à l’année en cours.
(2) Si vous modifiez la date d’anniversaire d’un contact dans le dossier Contacts, l’âge affiché est automatiquement supprimé du calendrier.
(3) Ce code VBA fonctionne uniquement avec le calendrier Outlook par défaut.


Articles associés


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