كيف تحسب الساعات / الأيام / الأسابيع التي قضاها في موعد أو اجتماع في Outlook؟
لنفترض أن هناك الكثير من المواعيد والاجتماعات في التقويم في Outlook. والآن تريد حساب الساعات / الأيام / الأسابيع التي تقضيها في هذه المواعيد والاجتماعات ، أي فكرة؟ ستقدم هذه المقالة VBA لمساعدتك.
عد الساعات / الأيام / الأسابيع التي قضاها في موعد أو اجتماع مع VBA
عد الساعات / الأيام / الأسابيع التي قضاها في موعد أو اجتماع مع VBA
ستقدم هذه الطريقة VBA لحساب الساعات أو الدقائق التي يتم قضاؤها في الموعد أو الاجتماع المحدد في Outlook. يرجى القيام بما يلي:
1. انتقل إلى مجلد التقويم ، وانقر لتحديد الموعد أو الاجتماع الذي ستحسب الساعات التي قضاها.
2. صحافة قديم + F11 في نفس الوقت لفتح نافذة Microsoft Visual Basic for Applications.
3. انقر إدراج > وحدة، ثم الصق رمز فبا أدناه في نافذة الوحدة النمطية الافتتاحية.
VBA: حساب الساعات / الدقائق التي تم قضاؤها في موعد أو اجتماع في Outlook
Sub CountTimeSpent()
Dim oOLApp As Outlook.Application
Dim oSelection As Outlook.Selection
Dim oItem As Object
Dim iDuration As Long
Dim iTotalWork As Long
Dim iMileage As Long
Dim iResult As Integer
Dim bShowiMileage As Boolean
bShowiMileage = False
iDuration = 0
iTotalWork = 0
iMileage = 0
On Error Resume Next
Set oOLApp = CreateObject("Outlook.Application")
Set oSelection = oOLApp.ActiveExplorer.Selection
For Each oItem In oSelection
If oItem.Class = olAppointment Then
iDuration = iDuration + oItem.Duration
iMileage = iMileage + oItem.Mileage
ElseIf oItem.Class = olTask Then
iDuration = iDuration + oItem.ActualWork
iTotalWork = iTotalWork + oItem.TotalWork
iMileage = iMileage + oItem.Mileage
ElseIf oItem.Class = Outlook.olJournal Then
iDuration = iDuration + oItem.Duration
iMileage = iMileage + oItem.Mileage
Else
iResult = MsgBox("Please select some Calendar, Task or Journal items at first!", vbCritical, "Items Time Spent")
Exit Sub
End If
Next
Dim MsgBoxText As String
MsgBoxText = "Total time spent: " & vbNewLine & iDuration & " minutes"
If iDuration > 60 Then
MsgBoxText = MsgBoxText & HoursMsg(iDuration)
End If
If iTotalWork > 0 Then
MsgBoxText = MsgBoxText & vbNewLine & vbNewLine & "Total work recorded; " & vbNewLine & iTotalWork & " minutes"
If iTotalWork > 60 Then
MsgBoxText = MsgBoxText & HoursMsg(iTotalWork)
End If
End If
If bShowiMileage = True Then
MsgBoxText = MsgBoxText & vbNewLine & vbNewLine & "Total iMileage; " & iMileage
End If
iResult = MsgBox(MsgBoxText, vbInformation, "Items Time spent")
ExitSub:
Set oItem = Nothing
Set oSelection = Nothing
Set oOLApp = Nothing
End Sub
Function HoursMsg(TotalMinutes As Long) As String
Dim iHours As Long
Dim iMinutes As Long
iHours = TotalMinutes \ 60
iMinutes = TotalMinutes Mod 60
HoursMsg = " (" & iHours & " Hours and " & iMinutes & " Minutes)"
End Function
4. اضغط على F5 مفتاح أو انقر فوق يجري زر لتشغيل هذا VBA.
والآن ينبثق مربع حوار ويظهر عدد الساعات / الدقائق التي قضاها الموعد / الاجتماع المحدد. انظر لقطة الشاشة:
ملاحظات: يمكنك تحديد عدة مواعيد أو اجتماعات في نفس الوقت لحساب إجمالي الساعات / الدقائق التي تم قضاؤها عليها باستخدام رمز VBA هذا.
مقالات ذات صلة
احسب العدد الإجمالي للمحادثات في مجلد في Outlook
احسب العدد الإجمالي للمرفقات في رسائل البريد الإلكتروني المحددة في Outlook
قم بحساب عدد المستلمين في الحقول "إلى" و "نسخة" و "نسخة مخفية الوجهة" في Outlook
أفضل أدوات إنتاجية المكتب
كوتولس لتوقعات - أكثر من 100 ميزة قوية لتعزيز توقعاتك
🤖 مساعد بريد الذكاء الاصطناعي: رسائل بريد إلكتروني احترافية فورية مع سحر الذكاء الاصطناعي - بنقرة واحدة للردود العبقرية، والنغمة المثالية، وإتقان متعدد اللغات. تحويل البريد الإلكتروني دون عناء! ...
📧 أتمتة البريد الإلكتروني: خارج المكتب (متوفر لـ POP وIMAP) / جدولة إرسال رسائل البريد الإلكتروني / نسخة تلقائية/نسخة مخفية الوجهة حسب القواعد عند إرسال البريد الإلكتروني / إعادة التوجيه التلقائي (القواعد المتقدمة) / إضافة تحية تلقائية / تقسيم رسائل البريد الإلكتروني متعددة المستلمين تلقائيًا إلى رسائل فردية
📨 إدارة البريد الإلكتروني: استدعاء رسائل البريد الإلكتروني بسهولة / حظر رسائل البريد الإلكتروني الاحتيالية حسب الموضوعات والآخرين / حذف رسائل البريد الإلكتروني المكررة / المزيد من خيارات البحث / توحيد المجلدات
📁 المرفقات برو: حفظ دفعة / فصل دفعة / ضغط دفعة / حفظ تلقائي / فصل تلقائي / ضغط تلقائي
؟؟؟؟ واجهة ماجيك: 😊 المزيد من الرموز التعبيرية الجميلة والرائعة / عزز إنتاجية Outlook الخاص بك باستخدام طرق العرض المبوبة / تصغير Outlook بدلاً من الإغلاق
؟؟؟؟ بنقرة واحدة عجائب: الرد على الكل بالمرفقات الواردة / رسائل البريد الإلكتروني لمكافحة التصيد / 🕘إظهار المنطقة الزمنية للمرسل
👩🏼🤝👩🏻 جهات الاتصال والتقويم: دفعة إضافة جهات الاتصال من رسائل البريد الإلكتروني المحددة / تقسيم مجموعة اتصال إلى مجموعات فردية / إزالة تذكير عيد ميلاد
على مدى ميزات 100 في انتظار الاستكشاف الخاص بك! انقر هنا لاكتشاف المزيد.