У цій статті ви дізнаєтеся, як використовувати Outlook VBA для автоматичного отримання кількості учасників перед розсилкою запрошення на зустріч.
Подібно до підрахунку одержувачів перед надсиланням електронного листа, деякі користувачі також хочуть підрахувати учасників перед надсиланням запрошення на зустріч. Як завжди, це має на меті оцінити загальну вартість запропонованої зустрічі, а потім вирішити, чи надсилати таке запрошення на зустріч учасникам. Більше того, оскільки Outlook дозволяє користувачам встановлювати учасників як обов'язкових або необов'язкових, деякі хотіли б підраховувати учасників різних типів. І було б чудово, якби можна було включити ресурси та тривалість зустрічі. Хоча Outlook не має такої прямої функції, ви все одно можете використовувати код VBA для її реалізації.

Автоматичний підрахунок відвідувачів перед надсиланням запрошення на зустріч
- Для початку запустіть програму Outlook.
- Потім у головному вікні Outlook натисніть комбінації клавіш “Alt + F11”.
- Далі ви успішно увійдете в редактор Outlook VBA. Тепер вам потрібно знайти та відкрити проект “ThisOutlookSession”.
- Згодом скопіюйте та вставте в цей проект наступні коди VBA.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim objMeetingInvitation As Outlook.MeetingItem
Dim objMeeting As Outlook.AppointmentItem
Dim objAttendees As Outlook.Recipients
Dim objAttendee As Outlook.recipient
Dim lRequiredAttendeeCount, lOptionalAttendeeCount, lResourceCount As Long
Dim strMsg As String
Dim nPrompt As Integer
If TypeOf Item Is MeetingItem Then
Set objMeetingInvitation = Item
Set objMeeting = objMeetingInvitation.GetAssociatedAppointment(True)
Set objAttendees = objMeetingInvitation.Recipients
End If
lRequiredAttendeeCount = 0
lOptionalAttendeeCount = 0
lResourceCount = 0
'Count the required & optional attendees and resources, etc.
For Each objAttendee In objAttendees
If objAttendee.Type = olRequired Then
lRequiredAttendeeCount = lRequiredAttendeeCount + 1
ElseIf objAttendee.Type = olOptional Then
lOptionalAttendeeCount = lOptionalAttendeeCount + 1
ElseIf objAttendee.Type = olResource Then
lResourceCount = lResourceCount + 1
End If
Next
'Double check the meeting invitation details
strMsg = "Meeting Details:" & vbCrLf & vbCrLf & _
"Required Attendees: " & lRequiredAttendeeCount & vbCrLf & _
"Optional Attendees: " & lOptionalAttendeeCount & vbCrLf & _
"Resources: " & lResourceCount & vbCrLf & _
"Duration: " & GetDuration(objMeeting) & vbCrLf & vbCrLf & _
"Are you sure to send this meeting invitation?"
nPrompt = MsgBox(strMsg, vbExclamation + vbYesNo, "Double Check Meeting Invitation")
If nPrompt = vbYes Then
Cancel = False
Else
Cancel = True
End If
End Sub
Function GetDuration(objCurMeeting As AppointmentItem) As String
'Convert minute to hour
If objCurMeeting.Duration > 60 Then
GetDuration = Round(objCurMeeting.Duration / 60, 1) & " hours"
ElseIf objCurMeeting.Duration = 60 Then
GetDuration = Round(objCurMeeting.Duration / 60, 1) & " hour"
ElseIf objCurMeeting.Duration < 60 Then
GetDuration = objCurMeeting.Duration & " mins"
End If
End Function
- Після цього вам потрібно підписати цей код.
- Пізніше переконайтеся, що ваш Outlook дозволяє макроси з цифровим підписом.
- Відтепер кожного разу, коли ви натискаєте кнопку «Надіслати» у запрошеннях на зустріч, ви отримуватимете повідомлення, що відображає кількість учасників, ресурси та тривалість, як на зображенні нижче:
Гнучко справляйтеся з неприємними корупційними прогнозами
Можливо, ви коли-небудь раніше стикалися з проблемами Outlook, такими як заморожування, різні повідомлення про помилки тощо. На щастя, Outlook поставляється з попередньо встановленою програмою відновлення папки "Вхідні", яка називається як scanpst, який здатний вирішувати дрібні питання. Але якщо проблема серйозна, вам доведеться звернутися до більш спеціалізованого інструменту, такого як DataNumen Outlook Repair.
Вступ автора:
Ширлі Чжан - експерт із відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі корумпований mdf та перспективні програмні продукти для ремонту. Для отримання додаткової інформації відвідайте WWW.datanumen.com

