Некоторые пользователи хотели бы также видеть возраст соответствующего человека при просмотре дня рождения в календаре. Поэтому в этой статье мы поделимся способом, как легко воплотить эту идею в жизнь.
Когда вы добавляете информацию о дне рождения к контакту, Outlook автоматически создает событие дня рождения в календаре. В этом случае каждый раз, когда вы видите дни рождения в календаре, вы также можете захотеть получить возраст соответствующих людей. Таким образом, здесь мы представим вам способ реализовать это.
Показать возраст соответствующих лиц для всех событий дня рождения в виде списка
- В самом начале запустите редактор Outlook VBA.
- Затем скопируйте следующий код в файл module.
Sub ShowAgesOfBirthdayEventsListView()
Dim objStore As Outlook.Store
Dim objOutlookFile As Outlook.Folder
Dim objFolder As Outlook.Folder
'Process All Calendar Folders in Your Outlook
For Each objStore In Outlook.Application.Session.Stores
Set objOutlookFile = objStore.GetRootFolder
For Each objFolder In objOutlookFile.Folders
If objFolder.DefaultItemType = olAppointmentItem Then
Call ProcessFolders(objFolder)
End If
Next
Next
End Sub
Sub ProcessFolders(ByVal objCalendar As Outlook.Folder)
Dim i As Integer
Dim objItem As Object
Dim objBirthdayEvent As Outlook.AppointmentItem
Dim dStart, dBirth As Date
Dim nAge As Integer
Dim objNewProperty As Outlook.UserProperty
Dim objSubCalendar As Outlook.Folder
For i = objCalendar.Items.Count To 1 Step -1
Set objItem = objCalendar.Items.Item(i)
'Add "Age" Property to Birthday Events
If (objItem.MeetingStatus = olNonMeeting) And (objItem.IsRecurring = True) And (Right(objItem.Subject, 11) = "'s Birthday") Then
Set objBirthdayEvent = objItem
dStart = objBirthdayEvent.Start
'Count Age
dCurrentBirthday = DateSerial(Year(Now), Month(dStart), Day(dStart))
nAge = DateDiff("yyyy", dStart, dCurrentBirthday)
Set objNewProperty = objBirthdayEvent.UserProperties.Find("Age", True)
If objNewProperty Is Nothing Then
Set objNewProperty = objBirthdayEvent.UserProperties.Add("Age", olText, True)
End If
objNewProperty.value = nAge
objBirthdayEvent.Save
End If
Next
'Process All Sub-Calendar Folders Recursively
If objCalendar.Folders.Count > 0 Then
For Each objSubCalendar In objCalendar.Folders
Call ProcessFolders(objSubCalendar)
Next
End If
End Sub
- После этого поместите курсор в первую подпрограмму и нажмите «F5», чтобы запустить этот макрос.
- Когда макрос завершится, выйдите из редактора VBA и откройте папку календаря.
- Затем перейдите на вкладку «Вид» и нажмите «Изменить вид» > «Список».
- Далее нажмите кнопку «Просмотреть настройки».
- Во всплывающем диалоговом окне выберите «Столбцы».
- Затем в следующем диалоговом окне «Показать столбцы» выберите «Пользовательские поля в папке» из списка «Выбрать доступные поля из».
- Позже укажите «Возраст» в поле «Доступные столбцы» и нажмите кнопку «Добавить ->».
- В конце концов, нажимайте серию «ОК», пока не вернетесь к списку элементов календаря.
- Теперь в списке вы можете увидеть возраст людей всех событий дня рождения, как показано на следующем рисунке.
Исправить скомпрометированный файл Outlook
Вы можете впасть в панику, когда столкнетесь с поврежденный Outlook файл, который содержит много ваших ценных писем и расписаний. Несмотря на то, что такая проблема довольно безнадежна, все же нужно сразу успокоиться и обдумать действенные меры. Если вы будете продолжать беспокоиться, ситуация может становиться все хуже и хуже. На самом деле существует несколько способов и утилит, которые могут восстановить поврежденный файл, например, инструмент восстановления папки «Входящие» и более надежный и опытный инструмент, например DataNumen Outlook Repair.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая SQL Server фиксировать и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com




