Menu

Mettre plateforme VBA en réseau local

Messages postés
6
Date d'inscription
dimanche 31 mars 2019
Statut
Membre
Dernière intervention
14 avril 2019
- - Dernière réponse :  Yoda - 14 avril 2019 à 18:48
Bonjour , je viens vous solliciter sur un souci qui me bloque

je vous prie de bien vouloir prêter attention à mon souci , je vous serai reconnaissant


je travaille maintenant sur un projet de plateforme de saisie et de reporting partagé en VBA .

en effet , il ya un accé admin et un acces user .Les utilisateurs sont les agents du service dans lequel je travaille , et l'admin c'est le manager

la plateforme consiste à permettre l'acces à chaque agent d'utiliser la plateforme ( userform) pour remplir sa feuille

j'ai mis en place un userforme d'inscription qui permet à chaque utilisateur de s'inscrire et de generer une feuille propore à lui avec son nom.

au début à l'ouverture du fichier xlsm , une feuille appelé login s'ouvre avec les champs login et mot de passe , une fois l'agent rentre ses identifiant , il aura un userform de saisie et une feuille propre à lui et toutes les infos saisies sur le userform seront stocké sur cette feuille la

sachant que chaque agent aura une feuille propre à lui et un userform unique partagé . comment rendre ceci possible sur un serveur local à l"entreprise sans conflits ( comme le web ) c'est à dire , si je viens ouvrir le fichier vba sur mon poste et j'effectue des manipulation sur ma feuille , la deuxieme personne depuis son poste peut à tout moment ouvrir le fichier et le trouver à l'etat initiale ( feuille Login) et travailler dessus sans probleme de modification , conflits , etc.....

j'ai deja terminé la partie programmation et gestion d'accés , tout ceci fonctionne dans mon pc mais il ne reste que la partie serveur et utilisation partagé que je sais pas si va etre possible de l'utiliser en réseau

merci de m'aider si tu as des infos sur ca , je suis vraiment bloqué

voici le lien de mon fichier : https://mon-partage.fr/f/z5QPKuZ2/
pour comprendre ce que je fais merci de tester deux comptes :

Login : assag
mot de passe : 1992
avec ce compte , une feuille portant le nom assag est selectionnée

Login : nawal
mot de passe : ss
avec ce compte , une feuille portant le nom nawal est selectionnée

merci pour ton aide précieux
Afficher la suite 

Votre réponse

2 réponses

Messages postés
14422
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
14 avril 2019
220
0
Merci
Si tout est stocké dans ton fichier Excel, la seul solution est de le partager sur le réseau local (Partage Windows), mais dans ce cas, seul 1 personne peut travailler dessus à la fois.
mehdi_6425
Messages postés
6
Date d'inscription
dimanche 31 mars 2019
Statut
Membre
Dernière intervention
14 avril 2019
-
Merci NHenry
Mais cest pas ça l'objectif de mon projet , il faut que je trouve une solution pr lutilisation sans conflits
Commenter la réponse de NHenry
0
Merci
Salut

Une solution serait de ne pas travailler directement sur le fichier partagé mis en réseau.
Il y a quand même une condition, c'est que chaque utilisateur ne puisse accéder seulement aux données qui lui sont propres, sinon c'est la pagaille.

Voilà comment ça marche.
Sur le serveur se trouve le fichier partagé avec toutes les données de tous les utilisateurs.
Sur chaque PC-user se trouve le fichier qui contient les macros de gestion des données.

L'utilisateur ouvre son fichier (sur son PC) et une fenêtre login s'affiche
On appuie sur OK et le programme ouvre le fichier partagé sur le serveur et vérifie le login
Si le login est correct, il récupère les données stockées sur le fichier partagé, ces données seront affichées sur son userform (sur le fichier personnel)
Une fois les données récupérées, le fichier partagé est fermé, il est alors dispo pour un autre utilisateur

Quand les données sont mises à jour, un bouton Enregistrer ouvre le fichier partagé, met à jour les données et referme le fichier.

Si le login est incorrect, le programme referme le fichier partagé et demande un nouvel essai

Ces opérations de lecture/écriture ne prennent que quelques secondes. Au cas où un deuxième user demande l'accès au fichier partagé simultanément, une erreur est générée, il faut récupérer l'erreur et refaire une tentative quelques secondes plus tard.

Le principe c'est de ne pas laisser le fichier partagé ouvert plus longtemps que nécessaire au transfert des données.

Ciao
Commenter la réponse de Yoda