Bu makale, bir toplantı daveti göndermeden önce otomatik olarak katılımcı sayısını almak için Outlook VBA'yı nasıl kullanacağınızı öğretecektir.
E-posta göndermeden önce alıcı sayısını saymaya benzer şekilde, bazı kullanıcılar toplantı daveti göndermeden önce katılımcı sayısını da saymak ister. Her zamanki gibi, bu, önerilen toplantının toplam maliyetini tahmin etmeyi ve ardından katılımcılara böyle bir toplantı daveti gönderilip gönderilmeyeceğine karar vermeyi amaçlar. Dahası, Outlook kullanıcıların katılımcıları zorunlu veya isteğe bağlı olarak ayarlamasına izin verdiğinden, bazıları farklı türdeki katılımcıları saymak isteyebilir. Toplantı kaynakları ve süresi de dahil edilebilseydi daha da iyi olurdu. Outlook'ta böyle doğrudan bir özellik olmasa da, bunu gerçekleştirmek için VBA kodunu kullanabilirsiniz.

Toplantı Daveti Göndermeden Önce Katılımcıları Otomatik Olarak Say
- Öncelikle Outlook programınızı başlatın.
- Ardından ana Outlook penceresinde, “Alt + F11” tuş kısayollarına basın.
- Ardından, Outlook VBA düzenleyicisine başarıyla gireceksiniz. Şimdi “ThisOutlookSession” projesini bulup açmanız gerekiyor.
- Ardından, aşağıdaki VBA kodlarını kopyalayıp bu projeye yapıştırın.
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
- Bundan sonra, bu kodu imzalamanız gerekir.
- Daha sonra, Outlook'unuzun dijital olarak imzalanmış makrolara izin verdiğinden emin olun.
- Bundan sonra, toplantı davetlerinde “Gönder” düğmesine her tıkladığınızda, aşağıdaki resimdeki gibi katılımcı sayısını, kaynakları ve süreyi gösteren bir mesaj alacaksınız:
Sinir bozucu Outlook Bozulmasıyla Esnek Bir Şekilde Başa Çıkın
Belki daha önce donma, çeşitli hata mesajları vb. gibi Outlook sorunlarıyla karşılaşmışsınızdır. Neyse ki, Outlook, adı verilen bir gelen kutusu onarım aracıyla önceden yüklenmiş olarak gelir. Tarama, küçük sorunları çözebilen. Ancak sorun ciddiyse, daha özel bir araca başvurmanız gerekecektir. DataNumen Outlook Repair.
Yazar Tanıtımı:
Shirley Zhang, bir veri kurtarma uzmanıdır. DataNumendahil olmak üzere veri kurtarma teknolojilerinde dünya lideri olan , Inc. bozuk mdf ve görünüm onarım yazılım ürünleri. Daha fazla bilgi için ziyaret edin www.datanumen.com

