Passer au contenu

VBA : obtenir la liste des utilisateurs d’un fichier Excel

Comment : en écrivant dans un fichier texte le nom des personnes qui ouvrent le fichier.Vous voulez savoir quels utilisateurs ont ouvert le fichier Excel contenant…

Comment : en écrivant dans un fichier texte le nom des personnes qui ouvrent le fichier.Vous voulez savoir quels utilisateurs ont ouvert le fichier Excel contenant le rapport d’activité de ce mois-ci. Pour cela, vous devez créer une macro qui s’exécutera automatiquement à chaque ouverture du classeur et écrira dans
un fichier texte le nom de l’utilisateur ainsi que la date. Cette macro fera appel à la bibliothèque Advapi32.dll. Celle-ci comporte une fonction intitulée GetUserNameA qui renvoie le nom de l’utilisateur. Dans le fichier Excel à surveiller, créez
un nouveau module. Pour cela, déroulez le menu Outils/Macro/Visual Basic Editor. Ensuite, choisissez la commande Module dans le menu Insertion. Recopiez alors le listing ci-contre en remplaçant C:log.txt par le chemin du fichier texte dans lequel
vous souhaitez enregistrer le nom de l’utilisateur qui ouvre le fichier. Si ce fichier est en réseau, indiquez le chemin complet, par exemple serveurlog.txt, sinon le fichier texte sera créé localement sur l’ordinateur qui ouvre le document
Excel. Remarquez que, pour que la macro soit exécutée dès le lancement du fichier Excel, il faut lui donner le nom Auto_Open. Enregistrez alors votre document Excel. Désormais, chaque fois qu’un utilisateur ouvrira votre rapport d’activité, une
ligne sera automatiquement ajoutée au fichier log.txt.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


La rédaction