Cómo contar automáticamente los asistentes antes de enviar una invitación a una reunión en Outlook

Comparte ahora:

Este artículo le enseñará cómo utilizar Outlook VBA para obtener automáticamente un recuento de asistentes antes de enviar una invitación a una reunión. 

De forma similar a contar los destinatarios antes de enviar un correo electrónico, algunos usuarios también desean contar los asistentes antes de enviar una invitación a una reunión. Como es habitual, esto tiene como objetivo estimar el coste total de la reunión propuesta y, a partir de ahí, decidir si enviar o no la invitación a los asistentes. Además, dado que Outlook permite configurar la asistencia como obligatoria u opcional, algunos usuarios querrían contar los asistentes según su tipo. Sería ideal poder incluir los recursos y la duración de la reunión. Aunque Outlook no cuenta con una función directa para ello, se puede implementar mediante código VBA.

Cuenta automáticamente los asistentes antes de enviar una invitación a una reunión en Outlook

Conteo automático de los asistentes antes de enviar una invitación a una reunión

  1. Para empezar, abre tu programa Outlook.
  2. Luego, en la ventana principal de Outlook, presione los atajos de teclado "Alt + F11".
  3. A continuación, ingresará al editor de Outlook VBA con éxito. Ahora necesita buscar y abrir el proyecto "ThisOutlookSession".
  4. Posteriormente, copie y pegue los siguientes códigos VBA en este proyecto.
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

Código de VBA: recuento automático de los asistentes antes de enviar una invitación a una reunión

  1. Después de eso, debe firmar este código.
  2. Más tarde, asegúrese de que su Outlook permita las macros firmadas digitalmente.
  3. A partir de ahora, cada vez que haga clic en el botón "Enviar" en las invitaciones a reuniones, recibirá un mensaje que muestra el recuento de asistentes, los recursos y la duración, como la siguiente imagen:Mensaje que muestra el recuento de asistentes

Afronte con flexibilidad la frustrante corrupción de Outlook

Quizás alguna vez haya encontrado problemas de Outlook antes, como congelación, varios mensajes de error, etc. Afortunadamente, Outlook viene preinstalado con una herramienta de reparación de la bandeja de entrada, llamada escaneo, que es capaz de resolver pequeños problemas. Pero si el problema es grave, se le pedirá que recurra a una herramienta más especializada, como DataNumen Outlook Repair.

Introducción del autor:

Shirley Zhang es experta en recuperación de datos en DataNumen, Inc., que es el líder mundial en tecnologías de recuperación de datos, incluyendo mdf corrupto y productos de software de reparación de Outlook. Para más información visite www.datanumen.com

Comparte ahora:

Los comentarios están cerrados.