Accéder au contenu principal

Comment calculer et afficher les âges en fonction des anniversaires dans le calendrier Outlook ?

Author: Kelly Last Modified: 2025-08-06

En général, l'anniversaire d'un contact est automatiquement ajouté comme un rendez-vous récurrent annuel dans le calendrier. Mais savez-vous comment calculer l’âge du contact et l'afficher directement dans la vue du calendrier ? Cet article présentera une méthode VBA pour déterminer l’âge de chaque contact et l’afficher dans l’objet du rendez-vous récurrent correspondant dans Outlook.

Calculer et afficher les âges en fonction des anniversaires dans le calendrier Outlook

the screenshot of calculating age by birthdays in outlook

Calculer et afficher les âges en fonction des anniversaires 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 du calendrier par défaut, puis appuyez sur "Alt" + "F11" pour ouvrir la fenêtre "Microsoft Visual Basic for Applications".

2. Cliquez sur "Insérer" > "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 exécuter le VBA.

Lorsque vous revenez au calendrier par défaut, vous verrez que l’âge de chaque contact a été calculé et affiché dans l’objet du rendez-vous d'anniversaire récurrent. Voir capture d'écran :

the screenshot of step about calculating age by birthdays in outlook 1

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


Articles connexes


Meilleurs outils de productivité pour Office

Dernière nouvelle : Kutools pour Outlook lance une version gratuite !

Découvrez le tout nouveau Kutools pour Outlook avec plus de100 fonctionnalités incroyables ! Cliquez pour télécharger dès maintenant !

🤖 Kutools IA : Utilise une technologie avancée d’intelligence artificielle pour gérer vos emails en toute simplicité, notamment répondre, résumer, optimiser, étendre, traduire et rédiger des emails.

📧 Automatisation des emails : Réponse automatique (disponible pour POP et IMAP) / Programmation de l’envoi des emails / CC/BCC automatique selon des règles lors de l’envoi / Transfert automatique (Règle avancée) / Ajout automatique de la salutation / Fractionnement automatique des emails multi-destinataires en messages individuels...

📨 Gestion des emails : Rappeler les emails / Bloquer les emails frauduleux par sujet et autres critères / Supprimer les emails en double / Recherche Avancée / Organiser les dossiers...

📁 Pièces jointes Pro:Enregistrer par lot / Détachement par lot / Compression par lot / Enregistrer automatiquement/ Détachement automatique/Compression automatique...

🌟 Magie de l’interface : 😊Davantage d’emojis beaux et sympas / Recevez une alerte en cas d’email important / Réduisez Outlook au lieu de le fermer...

👍 Fonctions en un clic : Répondre à tous avec pièces jointes / Anti-phishing emails / 🕘Afficher le fuseau horaire de l’expéditeur...

👩🏼‍🤝‍👩🏻 Contacts & Calendrier: Ajouter des contacts en lot à partir des emails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire...

Utilisez Kutools dans la langue de votre choix– prend en charge l’anglais, l’espagnol, l’allemand, le français, le chinois, et plus de40 autres langues !

Débloquez instantanément Kutools pour Outlook en un seul clic. N’attendez plus, téléchargez maintenant et augmentez votre productivité !

kutools for outlook features1 kutools for outlook features2