See artikkel õpetab teile, kuidas kasutada Outlook VBA-d, et enne koosolekukutse väljasaatmist automaatselt osalejate arvu saada.
Sarnaselt adressaatide loendamisele enne e-kirja saatmist soovivad mõned kasutajad loendada ka osalejaid enne koosolekukutse saatmist. Nagu tavaliselt, on selle eesmärk hinnata kavandatava koosoleku kogumaksumust ja seejärel otsustada, kas saata selline koosolekukutse osalejatele. Lisaks, kuna Outlook lubab kasutajatel määrata osalejad kohustuslikeks või valikulisteks, soovivad mõned osalejaid loendada erinevat tüüpi. Ja see ei saaks olla parem, kui saab lisada koosoleku ressursid ja kestuse. Kuigi Outlookil sellist otsest funktsiooni pole, saab selle realiseerimiseks siiski VBA-koodi kasutada.

Enne koosolekukutse saatmist loendage osalejad automaatselt
- Alustamiseks käivitage oma Outlooki programm.
- Seejärel vajutage Outlooki põhiaknas kiirklahve Alt + F11.
- Järgmisena sisenete edukalt Outlook VBA redaktorisse. Nüüd peate leidma ja avama projekti "ThisOutlookSession".
- Seejärel kopeerige ja kleepige sellesse projekti järgmised VBA-koodid.
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
- Pärast seda peate selle koodi allkirjastama.
- Hiljem veenduge, et teie Outlook lubaks digitaalselt allkirjastatud makrosid.
- Nüüdsest saate iga kord, kui klõpsate koosolekukutsetes nupul „Saada”, teadet, mis näitab osalejate arvu, ressursse ja kestust, nagu järgmine pilt:
Toimuge masendav Outlooki korruptsiooniga paindlikult
Võib-olla olete kunagi varem kokku puutunud Outlooki probleemidega, nagu külmutamine, erinevad veateated ja nii edasi. Õnneks on Outlook eelinstallitud postkasti parandamise tööriistaga, mida nimetatakse scanpst, mis suudab lahendada väikseid probleeme. Kuid kui probleem on tõsine, peate uuesti kasutama spetsiaalset tööriista, näiteks DataNumen Outlook Repair.
Autori sissejuhatus:
Shirley Zhang on andmete taastamise ekspert DataNumen, Inc., mis on maailmas juhtiv andmete taastamise tehnoloogiate, sealhulgas rikutud mdf ja Outlooki remonditarkvaratooted. Lisateabe saamiseks külastage www.datanumenCom

