Passer au contenu principal

Comment calculer et afficher les âges par anniversaires sur le calendrier Outlook?

De manière générale, l'anniversaire d'un contact sera automatiquement ajouté en tant que rendez-vous annuel récurrent dans le calendrier. Mais savez-vous comment calculer l'âge du contact et afficher l'âge directement dans la vue du calendrier? Cet article présentera un VBA pour déterminer l'âge de chaque contact et afficher l'âge au sujet du rendez-vous récurrent relatif dans Outlook.

Calculer et afficher les âges par anniversaires dans le calendrier Outlook

Onglet Office - Activez l'édition et la navigation par onglets dans Microsoft Office, ce qui facilite le travail
Kutools for Outlook - Boostez Outlook avec plus de 100 fonctionnalités avancées pour une efficacité supérieure
Boostez votre Outlook 2021 - 2010 ou Outlook 365 avec ces fonctionnalités avancées. Profitez d'un essai gratuit complet de 60 jours et améliorez votre expérience de messagerie !

flèche bleue bulle droiteCalculer et afficher les âges par anniversaires dans le calendrier Outlook

Pour calculer l'âge de chaque contact et afficher l'âge dans le sujet du rendez-vous récurrent relatif dans le calendrier Outlook, procédez comme suit:

1. Ouvrez le dossier de calendrier par défaut et appuyez sur autre + F11 touches pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2Cliquez sur insérer > Module, puis collez sous le code VBA dans la nouvelle fenêtre de module.

VBA: calculer et afficher l'âge 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. appuie sur le F5 clé ou le Courir bouton pour exécuter ce VBA.

Lorsque vous revenez au calendrier par défaut, vous verrez l'âge de chaque contact est déterminé et affiché dans le sujet du rendez-vous d'anniversaire récurrent. Voir la capture d'écran:

Notes:
(1) En ce qui concerne le rendez-vous d'anniversaire récurrent d'un certain contact, l'âge de ce contact est entouré de parenthèses similaires à (41 dans 2017), 41 est l'âge, et 2017 est l'année en cours.
(2) Si vous modifiez l'anniversaire d'un certain contact dans le dossier de contacts, l'âge sera automatiquement supprimé du calendrier.
(3) Ce VBA fonctionne uniquement avec le calendrier Outlook par défaut.


flèche bleue bulle droiteArticles Relatifs


Meilleurs outils de productivité bureautique

Kutools for Outlook - Plus de 100 fonctionnalités puissantes pour booster votre Outlook

🤖 Assistant de messagerie IA: E-mails professionnels instantanés avec la magie de l'IA : un clic pour des réponses géniales, un ton parfait, une maîtrise multilingue. Transformez l’emailing sans effort ! ...

📧 Email Automation: Absent du bureau (disponible pour POP et IMAP)  /  Programmer l'envoi d'e-mails  /  Auto CC/BCC par règles lors de l'envoi d'un e-mail  /  Transfert automatique (règles avancées)   /  Ajouter un message d'accueil automatique   /  Divisez automatiquement les e-mails multi-destinataires en messages individuels 

(I.e. Email Management: Rappel facile des e-mails  /  Bloquer les e-mails frauduleux par sujets et autres  /  Supprimer les e-mails en double  /  Recherche Avancée  /  Consolider les dossiers 

(I.e. Pièces jointes ProSauvegarde par lots  /  Détachement par lots  /  Compression par lots  /  Enregistrement automatique   /  Détachement automatique  /  Compression automatique 

???? Magie de l'interface: 😊Plus d'émojis jolis et cool   /  Boostez votre productivité Outlook avec des vues à onglets  /  Réduire Outlook au lieu de fermer 

???? Merveilles en un clic: Répondre à tous avec les pièces jointes entrantes  /   E-mails anti-hameçonnage  /  🕘Afficher le fuseau horaire de l'expéditeur 

👩🏼‍🤝‍👩🏻 Contacts et calendrier: Ajouter par lots des contacts à partir des e-mails sélectionnés  /  Diviser un groupe de contacts en groupes individuels  /  Supprimer les rappels d'anniversaire 

infos Caractéristiques 100 Attendez votre exploration ! Cliquez ici pour en savoir plus.

 

 

Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
MsgBox "Fertig!" & vbCrLf & Zaehler & " Geburtstagseinträge geändert.", vbInformation, "Geburtstage angepasst "

Could you please translate this line for me? TIA
This comment was minimized by the moderator on the site
If possible, could you please give the above directive for auto-count in English??

Danke
This comment was minimized by the moderator on the site
Is there a way to set this up without using the birthday feature of the contact card?

On recurring could you set this up to show the number of years?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations