Code VBA - Récupérer des valeurs entre diverses feuilles

Trunk

XLDnaute Nouveau
Bonjour à tous,

Je tiens tout d'abord à vous remercier car j'ai pu réussir à trouver un petit bout de code que je cherchais grace aux divers échanges que j'ai pu lire sur ce forum...vous contribuez à aider les personnes, telles que moi, qui ne sont pas expertes en Excel et en développement et qui nécessitent parfois des petits coups de pouce pour parvenir à leurs fins !

Néanmoins, j'ai encore besoin d'aide... Je vous expose mon besoin :

J'ai mis en place dans un fichier excel un petit bout de code VBA qui affiche une feuille spécifique après qu'une personne ait entré un mot de passe (inputbox).

J'aimerais désormais pouvoir afficher à cette personne de manière automatique ce qu'elle est censée voir sur sa feuille dédiée.

--> Nous avons dans ma société un système de gestion électronique de clés contrôlée par des badges, et les personnes qui l'utilisent ont accès à plein de clés et ne savent pas à quoi toutes ces clés correspondent... J'aimerais donc leur montrer au sein d'une feuille l'intitulé des emplacements, mais seulement ceux auxquels ils ont accès.

J'ai fait un fichier excel exemple très raccourci que je joins à ce message, pour imager un peu ...

J'ai une feuille nommée "Accès" où j'ai comme colonnes :

- une colonne avec le mot de passe de la personne,
- ensuite une colonne avec son Prénom NOM,
- ensuite 5 colonnes correspondant à numéros de groupes qui sont en fait les numéros d'emplacements des clés. Sur la ligne de cette personne sont cochées des croix sous les groupes, indiquant les accès qu'a la personne.

Ensuite j'ai une feuille nommée "Emplacements" où l'on retrouve les numéros d'emplacements et en face de chacun d'entre eux l'intitulé des bureaux.

Ce que j'aimerais réaliser :

- Une personne ouvre le fichier, l'invite de commande lui demande un mot de passe. Elle entre le mot de passe et cela lui affiche la feuille qui lui a été réservée dans le code VBA (feuille "Agent1" ou "Agent2" dans mon fichier),

- la feuille contient un tableau comme celui déjà présent qui va alors lui afficher les numéros et intitulés de clés relatives aux accès qu'il a.

--> Pour cela, il faudrait que le code ait le comportement suivant : Le mot de passe est entré, le fichier cherche dans la colonne mot de passe du fichier "Accès", il vérifie les croix cochées sur la ligne de la personne et fait la relation avec les emplacements de la feuille "Emplacements". Puis les numéros et intitulés de clés sont récupérés et s'affichent les uns après les autres dans le tableau de feuille vue par l'agent.

J'ai simulé le fonctionnement de cet automatisme au sein du fichier excel joint.

Les mots de passe pour accéder au fichier sont "test" et "test2" ("test" affiche la feuille 1 et "test2" affiche la feuille 2).

Je ne sais pas si mes explications sont claires, mais j'ai cogité pendant un petit moment avant de me lancer dans l'écriture de ce message en essayant de clarifier au maximum ... Vous me répondrez peut-être que c'est utopique ce que je demande, ou critiquerez peut-être aussi code déjà en place (vous pouvez bien sur! :)), quoiqu'il en soit je suis ouvert à toute proposition ou aide, même si partielle, du moment que cela peut me permettre d'avancer...

Merci d'avance à tous ceux qui prendront le temps de me répondre.
 

Pièces jointes

  • Exemple simulé.xls
    27 KB · Affichages: 209

skoobi

XLDnaute Barbatruc
Re : Code VBA - Récupérer des valeurs entre diverses feuilles

Re,

peut-être écrire les mots de passe dans un autre fichier connu que par toi.
dans le code tu fais appel à ce fichier sans l'ouvrir biensûr (c'est faisable).
 

Trunk

XLDnaute Nouveau
Re : Code VBA - Récupérer des valeurs entre diverses feuilles

Salut Skoobi,

Effectivement, c'est une alternative ... je tâcherai de me renseigner sur ce point dès que possible pour voir si c'est "aisément" réalisable, car le temps passé sur ce petit fichier est tout de même conséquent au final...

Merci en tous cas pour l'info, je te tiens au courant dès que j'en ai appris un peu + sur cette possibilité ! :)

@ bientôt Skoobi !
 

Trunk

XLDnaute Nouveau
Re : Code VBA - Récupérer des valeurs entre diverses feuilles

Salut Skoobi,

désolé de répondre tardivement, mais j'étais assez occupé en ce début de semaine (formation).

Cela pose selon moi un souci, car le fichier est accessible en lecture sur un partage réseau (répertoire partagé / NTFS). Le second fichier devrait donc être situé à un autre emplacement, distant, et sans accès pour les utilisateurs, et je ne pense pas que cela soit possible techniquement dans le fonctionnement du fichier. Me trompé-je?
 

skoobi

XLDnaute Barbatruc
Re : Code VBA - Récupérer des valeurs entre diverses feuilles

Salut Trunk,
Cela pose selon moi un souci, car le fichier est accessible en lecture sur un partage réseau (répertoire partagé / NTFS)
dans ce cas tu mets un mot de passe pour la lecture non? (je parle du second fichier)
Sinon effectivement je vois pas.
 

Trunk

XLDnaute Nouveau
Re : Code VBA - Récupérer des valeurs entre diverses feuilles

Salut Skoobi ! :)

Ca alourdirait quelque peu le fonctionnement du fichier selon moi ... je laisse comme cela pour l'instant, j'envisagerai de le faire évoluer ultérieurement, quand j'aurai un peu de temps devant moi (pas sur que ça arrive un jour ... :( )

Encore merci pour tout Skoobi !!!!!!!!!!!! T'es un chef !;)
 

mekkaoui_1963

XLDnaute Nouveau
Re : Code VBA - Récupérer des valeurs entre diverses feuilles

شكر للقائمين على المنتدى انا اسف لا احسن التعبير بالفرنسية
مششكلتي تتمثل في التالي
لي جدول اكسل اريد ان لايسمح الاكسل بتعبئة اي سطر حتى يكون السابق معبئ
اي اذا كان السطر الاول فارغا يكون السطر الثاني لا يسمح بالكتابة
Row1 du Tab Vide Row2 Enabled
Row2 Enabled if Row1 est Vide
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
287
Réponses
2
Affichages
154
Réponses
8
Affichages
146

Statistiques des forums

Discussions
312 164
Messages
2 085 877
Membres
103 009
dernier inscrit
dede972