Comment compter les heures/jours/semaines passées sur un rendez-vous ou une réunion dans Outlook ?
Disons qu'il y a beaucoup de rendez-vous et de réunions dans un calendrier dans Outlook. Et maintenant, vous souhaitez compter les heures/jours/semaines passées sur ces rendez-vous et réunions, avez-vous une idée ? Cet article présentera une macro VBA pour vous aider.
Compter les heures/jours/semaines passées sur un rendez-vous ou une réunion avec VBA
Compter les heures/jours/semaines passées sur un rendez-vous ou une réunion avec VBA
Cette méthode présentera une macro VBA pour compter les heures ou minutes passées sur le rendez-vous ou la réunion spécifiés dans Outlook. Veuillez procéder comme suit :
1. Passez au dossier Calendrier, puis cliquez pour sélectionner le rendez-vous ou la réunion dont vous voulez compter les heures passées.
2. Appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
3. Cliquez sur Insérer > Module, puis collez le code VBA ci-dessous dans la fenêtre Module qui s'ouvre.
VBA : Compter les heures/minutes passées sur un rendez-vous ou une réunion dans 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. Appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour exécuter cette macro VBA.
Et maintenant, une boîte de dialogue apparaît et montre combien d'heures/minutes le rendez-vous/sélectionné a duré. Voir capture d'écran :

Remarque : Vous pouvez sélectionner plusieurs rendez-vous ou réunions en même temps pour compter le nombre total d'heures/minutes passées dessus avec ce code VBA.
Articles Connexes
Compter le nombre total de conversations dans un dossier dans Outlook
Compter le nombre total de pièces jointes dans les emails sélectionnés dans Outlook
Compter le nombre de destinataires dans les champs À, Cc et CCI dans Outlook
Compter le nombre d'emails par expéditeur dans Outlook
Meilleurs outils de productivité pour Office
Dernière nouvelle : Kutools pour Outlook lance sa version gratuite !
Découvrez le tout nouveau Kutools pour Outlook avec plus de100 fonctionnalités incroyables ! Cliquez pour télécharger dès maintenant !
📧 Automatisation des E-mails : Réponse automatique (disponible pour POP et IMAP) / Programmer l’envoi d’un e-mail / CC/BCC automatique par règle lors de l’envoi / Transfert automatique (règle avancée) / Ajouter automatiquement une salutation / Diviser automatiquement les e-mails multi-destinataires en messages individuels ...
📨 Gestion des E-mails : Rappeler lemail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les doublons / Recherche Avancée / Organiser les dossiers ...
📁 Pièces jointes Pro : Enregistrement en lot / Détachement en lot / Compression en lot / Enregistrer automatiquement / Détachement automatique / Compression automatique ...
🌟 Interface magique : 😊Plus d’emojis élégants et amusants / Vous rappelle lorsque des e-mails importants arrivent / Réduire Outlook au lieu de fermer ...
👍 Fonctions en un clic : Répondre à tous avec pièces jointes / E-mails anti-phishing / 🕘Afficher le fuseau horaire de l’expéditeur ...
👩🏼🤝👩🏻 Contacts & Calendrier : Ajouter en lot des contacts à partir des e-mails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire ...
Utilisez Kutools dans votre langue préférée – prend en charge l’Anglais, l’Espagnol, l’Allemand, le Français, le Chinois et plus de40 autres !


🚀 Téléchargement en un clic — Obtenez tous les compléments Office
Recommandé vivement : Kutools pour Office (5-en-1)
Un clic pour télécharger cinq installateurs en une seule fois — Kutools pour Excel, Outlook, Word, PowerPoint et Office Tab Pro. Cliquez pour télécharger dès maintenant !
- ✅ Praticité en un clic : téléchargez les cinq packages d’installation en une seule action.
- 🚀 Prêt pour toutes les tâches Office : installez les compléments dont vous avez besoin, quand vous en avez besoin.
- 🧰 Inclus : Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools pour PowerPoint