Microsoft 365 Historique de modifications d'un fichier Excel 365 ou autre

denistoulon

XLDnaute Junior
Bonjour à tous,

J'ai un petit souci de responsabilité de modifications d'un fichier Excel ou l'on me répond systématiquement: ce n'est pas moi! :cool:

Comment je peux avoir ou mettre en place un historique d'utilisation d'un fichier Excel qui est sur un serveur accessible à tous, mais comme la moitié font des conneries j'en ai marre.
Petite précision on connait le nom du dernier utilisateur qui l'a modifier mais jamais ceux d"avant.

Merci pour votre réponse
 
Solution
Bonsoir

En fait, je l'ai placé en cellule G1 de la feuille historisation, c'est plus simple à l'usage.
Vous lancez la macro informations et inscrivez le nouveau mot de passe en G1, la police est de même couleur que le fond pour qu'il ne soit pas visible directement, ensuite fermez en enregistrant le fichier.
Par contre, ne vous trompez pas, pas de vérification en double saisie et les minuscules majuscules sont gérées.
Le mot de passe d'accès au programme dans l'éditeur VBA ne change pas et il devra être changé manuellement

Bonne soirée

Wayki

XLDnaute Impliqué
Bonjour,
Vous avez une option dans le ruban à peu près au même endroit que la validation des données qui permet de faire ça de différentes manières, la plus complète étant la création d'une feuille de calcul avec tous les Enregistrements de tel utilisateur.
Plus d'infos ici :
A +
 

denistoulon

XLDnaute Junior
Bonjour denistoulon, wayki, le forum

Denistoulon, si votre classeur n'est pas déjà partagé, il est déconseillé de le faire car il y a, de l'avis même de Microsoft, de nombreuses limitations, voir le lien de Wayki.
Si vous avez la possibilité de l'utiliser, une solution VBA peut faire cela sans problème.

Bien cordialement, @+
Bonjour Yeahou,

Merci et votre solution m’intéresse. Je ne maitrise pas VBA pouvez vous me montrer l'exemple?
Bien à vous
 

D.D.

XLDnaute Impliqué
Hello

Même avant Office 365, l'option d'historique était déjà existante sur les classeurs partagés.
Il était ainsi possible de savoir qui avait modifié une cellule, et de faire afficher l'historique complet sur une feuille séparée.
Je m'en servais en m'en sert encore beaucoup sur les classeurs en réseau.
1634902739393.png


1634902760624.png


Bien à vous.
 

denistoulon

XLDnaute Junior
Re,

voila, vous pouvez afficher les modifications en lançant la macro informations.
le mot de passe est "tototiti" (même mot de passe pour les feuilles et pour VBA), pour les feuilles, vous pouvez le changer dans le code, la constante WbkProtect, quand vous avez l'historique affiché, pour VBA, c'est dans les propriétés du projet .
comme cela fonctionne en macro, un utilisateur lançant le fichier sans les activer aura toutes ses feuilles verrouillées par défaut.
Je dois m'absenter, n'hésitez pas à poser des questions, je répondrai plus tard.

Bien cordialement, @+

[fichier supprimé]
 
Dernière édition:
Re,

Un petit peu plus de temps maintenant !
Bien sur, si vous devez protéger certaines parties des feuilles à la saisie, le système des feuilles verrouillées uniquement quand les macros sont désactivées ne sera pas viable et on peut remplacer par des feuilles masquées quand les macros ne sont pas activées. Le but étant qu'un utilisateur ne puisse pas modifier le fichier dans ce cas.[édition: nouvelle version en pièce jointe]
Le principe actuel, un utilisateur lance le fichier, la macro rend les feuilles accessibles, ensuite les modifications de valeurs sont enregistrées dans la feuille Historisation, masquée en veryhidden, avec la date, l'heure, l'utilisateur en cours, la feuille, la cellule, la valeur.
à la fermeture ou à la sauvegarde, le programme rend inaccessible toutes les feuilles sur le fichier enregistré.

En lançant la macro Informations, la feuille historisation s'affiche et se déprotège. elle se re masque lors d'un nouvel appel à la macro ou lors d'un enregistrement.
il faut faire un peu de ménage de temps en temps sur la feuille historisation en supprimant les lignes ou en effaçant les valeurs car les enregistrements sont limités à 1048575 et le fichier finirait par grossir.
je peux aussi mettre une purge automatique selon un nombre de jours passés depuis la modification ou prévoir une routine de purge déclenchée manuellement.[purge automatique intégrée à 60 jours]

En attendant vos retours, je vous souhaite une bonne soirée

[édition : je joins la version feuilles masquées, je la trouve mieux et elle permet la protection de parties de feuilles, les informations de modification sont conservées 60 jours]
 

Pièces jointes

  • exemple denistoulon.xlsm
    36.1 KB · Affichages: 15
Dernière édition:

denistoulon

XLDnaute Junior
Re,

Un petit peu plus de temps maintenant !
Bien sur, si vous devez protéger certaines parties des feuilles à la saisie, le système des feuilles verrouillées uniquement quand les macros sont désactivées ne sera pas viable et on peut remplacer par des feuilles masquées quand les macros ne sont pas activées. Le but étant qu'un utilisateur ne puisse pas modifier le fichier dans ce cas.[édition: nouvelle version en pièce jointe]
Le principe actuel, un utilisateur lance le fichier, la macro rend les feuilles accessibles, ensuite les modifications de valeurs sont enregistrées dans la feuille Historisation, masquée en veryhidden, avec la date, l'heure, l'utilisateur en cours, la feuille, la cellule, la valeur.
à la fermeture ou à la sauvegarde, le programme rend inaccessible toutes les feuilles sur le fichier enregistré.

En lançant la macro Informations, la feuille historisation s'affiche et se déprotège. elle se re masque lors d'un nouvel appel à la macro ou lors d'un enregistrement.
il faut faire un peu de ménage de temps en temps sur la feuille historisation en supprimant les lignes ou en effaçant les valeurs car les enregistrements sont limités à 1048575 et le fichier finirait par grossir.
je peux aussi mettre une purge automatique selon un nombre de jours passés depuis la modification ou prévoir une routine de purge déclenchée manuellement.[purge automatique intégrée à 60 jours]

En attendant vos retours, je vous souhaite une bonne soirée

[édition : je joins la version feuilles masquées, je la trouve mieux et elle permet la protection de parties de feuilles, les informations de modification sont conservées 60 jours]
Bonjour merci pour votre exemple mais je suis novice et j'ai une question: comment j'accède à la feuille historisation en veryhidden? Parce que là pour moi c'est du chinois :)
2 eme question pourquoi qu'à chaque fois que j'enregistre , je me retrouve à l'onglet accueil?
Merci
 
re,
je suis novice
Effectivement ;)
menu affichage/macros, vous lancez la macro informations
pourquoi qu'à chaque fois que j'enregistre , je me retrouve à l'onglet accueil?
lors d'un enregistrement, le fichier se reprotége sinon il suffirait d'enregistrer le fichier en cours de travail, de fermer sans enregistrer et de rouvrir sans activer les macros pour avoir un fichier modifiable sans le suivi des modifs
Je modifie le prog pour rétablir la feuille en cours de traitement

@+
 
Re,

Voila la modification pour rester sur la feuille active lors d'un enregistrement.
comme vous êtes novice en vba, voici quelques précisions, vous pouvez ajouter ou supprimer toute feuille à partir du moment ou vous ne modifiez pas le nom de la feuille accueil et que vous ne touchez pas à la feuille historisation
N'hésitez pas à reposter si vous avez des questions, je suivrai ce fil !

Bien cordialement, @+
 

Pièces jointes

  • exemple denistoulon.xlsm
    36.3 KB · Affichages: 13

denistoulon

XLDnaute Junior
Re,

Voila la modification pour rester sur la feuille active lors d'un enregistrement.
comme vous êtes novice en vba, voici quelques précisions, vous pouvez ajouter ou supprimer toute feuille à partir du moment ou vous ne modifiez pas le nom de la feuille accueil et que vous ne touchez pas à la feuille historisation
N'hésitez pas à reposter si vous avez des questions, je suivrai ce fil !

Bien cordialement, @+
Oui mais comment consulter la feuille historisation?
 

Discussions similaires