メインコンテンツへスキップ

Outlookで予定や会議に費やした時間/日/週を数える方法は?

著者: ケリー 最終更新日:2020年12月23日

Outlookのカレンダーにたくさんの予定や会議があるとしましょう。 そして今、あなたはこれらの予定や会議に費やされた時間/日/週を数えたいと思いますか? この記事では、役立つVBAを紹介します。

VBAとの予定または会議に費やされた時間/日/週を数えます


VBAとの予定または会議に費やされた時間/日/週を数えます

このメソッドは、Outlookで指定された予定または会議に費やされた時間または分をカウントするVBAを導入します。 次のようにしてください。

1.カレンダーフォルダに移動し、クリックして、費やした時間をカウントする予定または会議を選択します。

2。 押す 他の + F11 キーを同時に押して、Microsoft Visual Basic forApplicationsウィンドウを開きます。

3。 クリック インセット > モジュール、次に、VBAコードの下を開いているモジュールウィンドウに貼り付けます。

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を実行するためのボタン。

そして、ダイアログボックスが表示され、選択した予定/会議に費やされた時間/分が表示されます。 スクリーンショットを参照してください:

Note:複数の予定または会議を同時に選択して、このVBAコードでそれらに費やされた合計時間/分をカウントできます。


関連記事


最高のオフィス生産性向上ツール

Kutools for Outlook - Outlook を強化する 100 以上の強力な機能

🤖 AIメールアシスタント: AI の魔法を備えたインスタント プロのメール - ワンクリックで天才的な返信、完璧な口調、多言語の習得。メールを簡単に変革しましょう! ...

📧 自動メール: 不在時 (POP および IMAP で利用可能)  /  メール送信のスケジュール設定  /  メール送信時のルールによる自動CC/BCC  /  自動転送 (高度なルール)   /  あいさつを自動追加   /  複数受信者の電子メールを個別のメッセージに自動的に分割する ...

📨 電子メール管理: メールを簡単に思い出す  /  件名などで詐欺メールをブロック  /  重複するメールを削除する  /  高度な検索  /  フォルダーを統合する ...

📁 アタッチメント プロバッチ保存  /  バッチデタッチ  /  バッチ圧縮  /  自動保存   /  自動デタッチ  /  自動圧縮 ...

🌟 インターフェースマジック: 😊もっと可愛くてクールな絵文字   /  タブ付きビューで Outlook の生産性を向上  /  Outlook を閉じる代わりに最小化する ...

???? ワンクリックの驚異: 受信した添付ファイルをすべてに返信する  /   フィッシングメール対策  /  🕘送信者のタイムゾーンを表示 ...

👩🏼‍🤝‍👩🏻 連絡先とカレンダー: 選択したメールから連絡先を一括追加  /  連絡先グループを個別のグループに分割する  /  誕生日のリマインダーを削除する ...

オーバー 100の特長 あなたの探索をお待ちしています! ここをクリックして詳細をご覧ください。

 

 

Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hallo Amanda,

Vielen Dank für die Rückfrage.

Hier ein Beispiel. Im Kalender werden 2 Termine ausgewählt.

Termin 1:
Gesamtdauer: 2 Stunden
Teilnehmer: A, B, C

Termin 2:
Gesamtdauer: 3 Stunden
Teilnehmer: B, C, D

Ergebnis der Auswertung (Reihenfolge egal):
Gesamtdauer Teilnehmer A: 2 Stunden
Gesamtdauer Teilnehmer B: 5 Stunden
Gesamtdauer Teilnehmer C: 5 Stunden
Gesamtdauer Teilnehmer D: 3 Stunden

Das ganze dann am besten in einer .csv oder excel oder irgendwas was man speichern und bearbeiten kann ;o)

Damit will ich erreichen das ich die Zeiten welche unser Dienstleister mit uns in Terminen verbringt abgleichen kann mit dem was er uns abrechnet. D.h. ich sehe was er sagt was er noch sonst so treibt... oder auch eben nicht ;o)
This comment was minimized by the moderator on the site
Gibt es eine Möglichkeit das MAcro so anzupassen das die Summe der Zeiten je Teilnehmer in den Terminen ermittelt wird? Als Projektmanager bin ich inteessiert zu wissen wieviele Stunden wir mit einme Dienstleister in Terminen verbringen.

Vielen Dank!
This comment was minimized by the moderator on the site
Hi,

Do you mean that you want to get the total number of time across all events that are related with a specific attendee?
I am not quite sure that I understand what you want.

Amanda
This comment was minimized by the moderator on the site
C'est parfait même et surtout pour une analphabète de l'informatique. Merci.
This comment was minimized by the moderator on the site
Can you do the same in OWA?
This comment was minimized by the moderator on the site
What a very helpful macro! Thank you!
This comment was minimized by the moderator on the site
how do you count total time for all meetings on a calendar over a period. We are trying to figure out how much our different staff members are spending in meetings in total.
This comment was minimized by the moderator on the site
You need to change the calendar view to a list view that shows all of the appointments together, and then you can highlight all of those that you're interested in totaling, and run that VBA macro.
This comment was minimized by the moderator on the site
Did you get a response on this or figured it out ? Im trying to do the same.
This comment was minimized by the moderator on the site
I shifted to month mode and selected all invites using drag and drop, able to see the sum of all meetings. hope it helps.
This comment was minimized by the moderator on the site
Thanks for a very useful macro! I just found one error: oItem.Mileage is a String not a Long. This error caused the macro to got blocked.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations