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 consacrées à ces rendez-vous et réunions, une idée? Cet article présentera un 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 introduira un VBA pour compter les heures ou les minutes passées sur le rendez-vous ou la réunion spécifié dans Outlook. Veuillez procéder comme suit:
1. Passez au dossier Calendrier et cliquez pour sélectionner le rendez-vous ou la réunion dont vous comptez les heures passées.
2. presse autre + F11 simultanément pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
3. Cliquez insérer > Module, puis collez sous le code VBA dans la fenêtre Module d'ouverture.
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. appuie sur le F5 ou cliquez sur la Courir bouton pour exécuter ce VBA.
Et maintenant, une boîte de dialogue apparaît et montre combien d'heures / minutes le rendez-vous / la réunion sélectionné a passé. Voir la capture d'écran:
Notes: Vous pouvez sélectionner plusieurs rendez-vous ou réunions en même temps pour compter le total des heures / minutes passées sur eux avec ce code VBA.
Articles Relatifs
Compter le nombre total de conversations dans un dossier dans Outlook
Compter le nombre total de pièces jointes dans les e-mails sélectionnés dans Outlook
Compter le nombre de destinataires dans les champs À, Cc et Cci dans Outlook
Meilleurs outils de productivité bureautique
Kutools for Outlook - Plus de 100 fonctionnalités puissantes pour booster votre Outlook
🤖 Assistant de messagerie IA: E-mails professionnels instantanés avec la magie de l'IA : un clic pour des réponses géniales, un ton parfait, une maîtrise multilingue. Transformez l’emailing sans effort ! ...
📧 Email Automation: Absent du bureau (disponible pour POP et IMAP) / Programmer l'envoi d'e-mails / Auto CC/BCC par règles lors de l'envoi d'un e-mail / Transfert automatique (règles avancées) / Ajouter un message d'accueil automatique / Divisez automatiquement les e-mails multi-destinataires en messages individuels
(I.e. Email Management: Rappel facile des e-mails / Bloquer les e-mails frauduleux par sujets et autres / Supprimer les e-mails en double / Recherche Avancée / Consolider les dossiers
(I.e. Pièces jointes Pro: Sauvegarde par lots / Détachement par lots / Compression par lots / Enregistrement automatique / Détachement automatique / Compression automatique
???? Magie de l'interface: 😊Plus d'émojis jolis et cool / Boostez votre productivité Outlook avec des vues à onglets / Réduire Outlook au lieu de fermer
???? Merveilles en un clic: Répondre à tous avec les pièces jointes entrantes / E-mails anti-hameçonnage / 🕘Afficher le fuseau horaire de l'expéditeur
👩🏼🤝👩🏻 Contacts et calendrier: Ajouter par lots des contacts à partir des e-mails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer les rappels d'anniversaire
infos Caractéristiques 100 Attendez votre exploration ! Cliquez ici pour en savoir plus.