Macro ou événement pour enregistrer la durée du traitement d’un portefeuille, Excel VBA

La solution suivante enregistrera en arrière-plan le temps que vous travaillez sur un classeur. Pour ce faire, utilisez l’événement Workbook_Open pour arrêter l’heure de début. La fin du traitement est atteinte lorsque vous fermez à nouveau le fichier. Dans ce cas, profitez de l’événement Workbook_BeforeSave.

Dim LeTemps As Date
Private Sub Workbook_Open()
LeTemps = Format(Now, "dd.mm.yy h:mm:ss")
Sheets("tempstotal").Range("A2").Value = LeTemps
End Sub

Dès que vous quittez le classeur, affichez la feuille de calcul tempstotal masquée, écrivez les entrées dans le tableau, puis masquez à nouveau le tableau. Vous ne remarquerez rien de toute l’action.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim finTemps As Date
Dim DiffTemps As Date
finTemps = Format(Now, "dd.mm.yy h:mm:ss")
DiffTemps = (finTemps - LeTemps)
Application.ScreenUpdating = False
AfficherLaFeuille
Sheets("tempstotal").Select
Range("B2").Value = finTemps
Range("C2").Value = Format(DiffTemps, "h:mm:ss")
Range("A2").Select
Selection.EntireRow.Insert
MasquerLaFeuille
Application.ScreenUpdating = True
End Sub

 Les deux macros AfficherLaFeuille et MasquerLaFeuille sont stockées sous un module normal.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x