Как автоматически подсчитывать участников перед отправкой приглашения на собрание в Outlook

Поделись сейчас:

В этой статье вы узнаете, как использовать Outlook VBA для автоматического подсчета участников перед отправкой приглашения на собрание. 

Подобно подсчету получателей перед отправкой электронного письма, некоторые пользователи также хотят подсчитать участников перед отправкой приглашения на собрание. Как правило, это делается для оценки общей стоимости предлагаемого собрания и принятия решения о том, следует ли отправлять приглашение участникам. Более того, поскольку Outlook позволяет пользователям указывать участников как обязательных или необязательных, некоторые хотели бы подсчитывать участников разных типов. И было бы замечательно, если бы можно было включить в подсчет ресурсы собрания и его продолжительность. Хотя в Outlook нет такой прямой функции, вы все равно можете использовать код VBA для ее реализации.

Автоматический подсчет участников перед отправкой приглашения на собрание в Outlook

Автоматический подсчет участников перед отправкой приглашения на собрание

  1. Для начала запустите программу Outlook.
  2. Затем в главном окне Outlook нажмите сочетание клавиш «Alt + F11».
  3. Далее вы успешно войдете в редактор Outlook VBA. Теперь вам нужно найти и открыть проект ThisOutlookSession.
  4. Затем скопируйте и вставьте в этот проект следующие коды 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

Код VBA — автоматический подсчет участников перед отправкой приглашения на собрание

  1. После этого нужно подписать этот код.
  2. Позже убедитесь, что ваш Outlook разрешает макросы с цифровой подписью.
  3. Отныне каждый раз, когда вы нажимаете кнопку «Отправить» в приглашениях на собрания, вы будете получать сообщение с указанием количества участников, ресурсов и продолжительности, как на следующем изображении:Сообщение, показывающее количество участников

Гибко справляться с разочаровывающей коррупцией Outlook

Возможно, вы когда-либо сталкивались с проблемами Outlook, такими как зависание, различные сообщения об ошибках и так далее. К счастью, Outlook поставляется с предустановленным инструментом восстановления папки «Входящие», который называется Скэнпст, который способен решать небольшие вопросы. Но если проблема серьезная, вам потребуется вернуться к более специализированному инструменту, такому как DataNumen Outlook Repair.

Об авторе:

Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая коррумпированный мдф и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com

Поделись сейчас:

Комментарии закрыты.