Saltar al contenido principal

¿Cómo calcular y mostrar edades por cumpleaños en el calendario de Outlook?

En términos generales, el cumpleaños de un contacto se agregará automáticamente como una cita anual recurrente en el calendario. Pero, ¿sabe cómo calcular la edad del contacto y mostrar la edad directamente en la vista de calendario? Este artículo presentará un VBA para determinar la edad de cada contacto y mostrar la edad sobre el tema de la cita recurrente relativa en Outlook.

Calcular y mostrar edades por cumpleaños en el calendario de Outlook

Pestaña Office: habilite la edición y navegación con pestañas en Microsoft Office, haciendo que el trabajo sea muy sencillo
Kutools para Outlook: mejore Outlook con más de 100 funciones avanzadas para una eficiencia superior
Mejore su Outlook 2021 - 2010 o Outlook 365 con estas funciones avanzadas. ¡Disfruta de una prueba completa gratuita de 60 días y mejora tu experiencia de correo electrónico!

flecha azul burbuja derechaCalcular y mostrar edades por cumpleaños en el calendario de Outlook

Para calcular la edad de cada contacto y mostrar la edad en el tema de la cita recurrente relativa en el calendario de Outlook, haga lo siguiente:

1. Abra la carpeta de calendario predeterminada y presione otro + F11 teclas para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. Hacer clic recuadro > Móduloy luego pegue debajo del código VBA en la nueva ventana del módulo.

VBA: calcula y muestra las edades de los contactos en el calendario de 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. presione el F5 clave o la Ejecutar botón para ejecutar este VBA.

Cuando regrese al calendario predeterminado, verá que la edad de cada contacto se calcula y se muestra en el asunto de la cita de cumpleaños recurrente. Ver captura de pantalla:

Notas:
(1) En el tema de la cita de cumpleaños recurrente de un determinado contacto, la edad de este contacto está entre paréntesis similar a (41 en 2017), 41 es la edad, y 2017 es el año actual.
(2) Si cambia el cumpleaños de un determinado contacto en la carpeta de contactos, la edad se eliminará del calendario automáticamente.
(3) Este VBA funciona solo con el calendario predeterminado de Outlook.


flecha azul burbuja derechaArtículos Relacionados


Las mejores herramientas de productividad de oficina

Kutools para Outlook - Más de 100 potentes funciones para potenciar tu perspectiva

🤖 Asistente de correo AI: Correos electrónicos profesionales instantáneos con magia de IA: respuestas geniales con un clic, tono perfecto y dominio multilingüe. ¡Transforme el correo electrónico sin esfuerzo! ...

📧 Automatización de correo electrónico: Fuera de la oficina (disponible para POP e IMAP)  /  Programar envío de correos electrónicos  /  CC/CCO automático según reglas al enviar correo electrónico  /  Reenvío automático (reglas avanzadas)   /  Agregar saludo automáticamente   /  Divida automáticamente correos electrónicos de múltiples destinatarios en mensajes individuales ...

📨 Gestión de correo electrónico: Recuperar correos electrónicos fácilmente  /  Bloquear correos electrónicos fraudulentos por sujetos y otras personas  /  Eliminar correos electrónicos duplicados  /  Búsqueda Avanzada  /  Consolidar carpetas ...

📁 Archivos adjuntos profesionalesGuardar lote  /  Separación de lotes  /  Comprimir por lotes  /  Ahorro automático   /  Desconexión automática  /  Autocompresión ...

???? Interfaz mágica: 😊Más emojis bonitos y geniales   /  Aumente su productividad en Outlook con vistas con pestañas  /  Minimizar Outlook en lugar de cerrar ...

👍 Maravillas con un clic: Responder a todos los archivos adjuntos entrantes  /   Correos electrónicos antiphishing  /  🕘Mostrar zona horaria del remitente ...

👩🏼‍🤝‍👩🏻 Contactos y calendario: Agregar por lotes contactos de correos electrónicos seleccionados  /  Dividir un grupo de contactos en grupos individuales  /  Eliminar recordatorios de cumpleaños ...

Mas de Características 100 ¡Espere su exploración! Haga clic aquí para descubrir más.

Leer Mas       Descargar gratis      Comprar
 

 

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