Enregistrement horaire et fermeture d'un fichier dans un onglet

Bonjour le forum,

J'ai une macro qui enregistre dans l'onglet "Archivages_ouverture_fermeture" le nom de la personne qui ouvre le fichier en colonne A ainsi que la date et l'horaire d'ouverture en colonne B. Je voudrai qu'à la fermeture du fichier la date et l'horaire s'inscrivent en colonne C afin de pouvoir calculer en colonne D la durée totale que le fichier a été ouvert par une même personne.

Si quelqu'un peut m'apporter une solution

Merci.

Bonjour,

Ajoutez ceci dans le module "ThisWorkbook":

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.ScreenUpdating = False
    With Sheets("Archivages_ouverture_fermeture")
        Unprotect Password:="titou"
        ligne_fermeture = .Cells(Rows.Count, 1).End(xlUp).Row
        .Cells(ligne_fermeture, 3) = Now()
        .Cells(ligne_fermeture, 4) = Format(.Cells(ligne_fermeture, 3) - .Cells(ligne_fermeture, 2), "HH:MM")
    End With
    Sheets("PLANIF").Select
End Sub

Cdlt

Salut Arturo83 et merci pour ta macro qui fait le TAF. Je mets le sujet en résolu.

Juste une question pourquoi la variable "ligne_fermeture" n'est pas définie dans la macro ?

Merci encore pour le temps et la solution apportée à ma question

Juste une question pourquoi la variable "ligne_fermeture" n'est pas définie dans la macro ? Vous voulez peut-être dire "déclarée" à la place de "définie".

Je n'ai fais que reprendre votre macro et j'ai remplacé la variable "Ligne_ouverture" par "Ligne_fermeture", mais votre variable n'était pas déclarée non plus.

c'est vrai que c'est mieux de déclarer les variables surtout s'il y en a beaucoup et de types différents, mais dans le cas présent, cela n'a que très peu d'incidence sur le bon déroulement du programme vu qu'elle est unique.

Cdlt

Merci pour le retour et effectivement je pensais avoir déclaré ma variable dans la macro open...

Il va falloir que je change de lunettes😂

Rechercher des sujets similaires à "enregistrement horaire fermeture fichier onglet"