Как рассчитать и отобразить возраст по дням рождения в календаре Outlook?
Как правило, день рождения контакта автоматически добавляется как ежегодное повторяющееся событие в календаре. Но знаете ли вы, как рассчитать возраст контакта и показать его непосредственно в представлении календаря? В этой статье будет представлен метод VBA для определения возраста каждого контакта и отображения его в теме соответствующего повторяющегося события в Outlook.
Рассчитайте и покажите возраст по дням рождения в календаре Outlook

Рассчитайте и покажите возраст по дням рождения в календаре Outlook
Чтобы рассчитать возраст каждого контакта и показать его в теме связанного повторяющегося события в календаре Outlook, выполните следующие действия:
1. Откройте папку со стандартным календарем и нажмите клавиши "Alt" + "F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставить" → "Модуль", а затем вставьте следующий код VBA в новое окно модуля.
VBA: Рассчитайте и покажите возраст контактов в календаре 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. Нажмите "F5" или кнопку "Выполнить", чтобы запустить VBA.
Когда вы вернетесь к стандартному календарю, вы увидите, что возраст каждого контакта рассчитан и отображен в теме повторяющегося события дня рождения. См. скриншот:

Примечания:
(1) В теме повторяющегося события дня рождения контакта возраст указан в скобках, например (41 в 2017), где 41 — это возраст, а 2017 — текущий год.
(2) Если вы измените день рождения контакта в папке контактов, отображаемый возраст будет автоматически удален из календаря.
(3) Этот VBA работает только со стандартным календарем Outlook.
Связанные статьи
Экспорт дней рождения всех контактов из Outlook
Удаление или удаление всех календарей дней рождения одновременно в Outlook
Лучшие инструменты для повышения продуктивности работы с Office
Срочные новости: бесплатная версия Kutools для Outlook уже доступна!
Оцените обновленный Kutools для Outlook с более чем100 невероятными функциями! Нажмите, чтобы скачать прямо сейчас!
📧 Автоматизация Email: Автоответчик (Доступно для POP и IMAP) / Запланировать отправку писем / Авто Копия/Скрытая копия по правилам при отправке писем / Автоматическое перенаправление (Расширенное правило) / Автоматически добавить приветствие / Авторазделение Email с несколькими получателями на отдельные письма ...
📨 Управление Email: Отозвать письмо / Блокировать вредоносные письма по теме и другим критериям / Удалить дубликаты / Расширенный Поиск / Организовать папки ...
📁 Вложения Pro: Пакетное сохранение / Пакетное открепление / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие ...
🌟 Волшебство интерфейса: 😊Больше красивых и стильных эмодзи / Напоминание при поступлении важных писем / Свернуть Outlook вместо закрытия ...
👍 Удобные функции одним кликом: Ответить всем с вложениями / Антифишинговая Email / 🕘Показать часовой пояс отправителя ...
👩🏼🤝👩🏻 Контакты и Календарь: Пакетное добавление контактов из выбранных Email / Разделить группу контактов на отдельные / Удалить напоминание о дне рождения ...
Используйте Kutools на вашем языке – поддерживаются Английский, Испанский, Немецкий, Французский, Китайский и более40 других!


🚀 Скачайте все дополнения Office одним кликом
Рекомендуем: Kutools для Office (5-в-1)
Скачайте сразу пять установщиков одним кликом — Kutools для Excel, Outlook, Word, PowerPoint и Office Tab Pro. Нажмите, чтобы скачать прямо сейчас!
- ✅ Все просто: скачайте все пять установочных пакетов одним действием.
- 🚀 Готово для любой задачи Office: Установите нужные дополнения тогда, когда они вам понадобятся.
- 🧰 Включено: Kutools для Excel / Kutools для Outlook / Kutools для Word / Office Tab Pro / Kutools для PowerPoint