Vous voulez interdire les modifications simultanées par plusieurs utilisateurs, et visualiser qui modifie actuellement un fichier, tout en autorisant l'ouverture en lecture à tous, sans crainte d'un verrouillage du fichier.
La solution est ici: Gestion_Ecriture (clic-droit, enregistrer sous)
Mode d'emploi:
- Intégrer la source fournie dans votre code
- /!\ Attention, il vous faudra également Exploser, Imploser pour la manipulation sécurisée des noms de fichiers, et Nom_Utilisateur_Reseau pour attribuer le fichier à modifier à un utilisateur.
- Faire l'appel aux fonctions : Se fait automatiquement avec auto_open et auto_close.
- x_Valeur = Gestion_Ecriture_Open(opt. x_PasdInfo)
- x_Valeur = Gestion_Ecriture_Close(opt. x_PasdInfo)
- Où :
- x_Valeur = contiendra -1 en cas de levée d'une alerte, 0 sinon.
- x_PasdInfo = Booléen optionnel devant être à vrai pour que les messages d'information ne soient pas affichés.
Pour gérer une inadvertance possible de modifier un fichier ouvert en lecture seule, et de perdre les modifications en quittant (sans avertissement).
Déplacer dans ThisWorkbook l'événement commenté "Workbook_SheetChange" et le décommenter pour qu'il soit exécutable.
Ainsi, en cas d'ouverture en lecture seule, toute modification alertera l'utilisateur que ses modifications seront perdues en quittant.
Suivi des évolutions:
- 2021.03.19 (v1.00) : Création initiale, renomme les fichiers pendant l'écriture.
- 2022.01.28 (v1.10) : Force le fichier original a être ouvert en lecture seule par défaut, Amélioration de la gestion des noms avec Imploser et Exploser. Gestion des alertes en mode muet possible.
- 2022.09.07 (v1.11) : Ajout de l'événement Workbook_SheetChange pour alerter d'une ouverture incorrecte
- 2023.02.15 (v1.20) : Empêche l'ouverture du fichier s'il ne s'agit pas du fichier original.
- 2023.07.08 (v1.21) : Robustifie l'affichage de l'utilisateur déjà en cours d'utilisation
Une gestion sécurisée des modifications en mode réseau...