Microsoft 365 Après un choix dans un ComboBox, charger les données dans des Labels

Piment

XLDnaute Occasionnel
Bonjour à tous.
Bonne année 2022 à tous, avec une pensée particulière pour Chti160, PatrickToulon, Job 75, BrunoM45 qui m'ont beaucoup aidé sur des projet précédents.
Je me tourne de nouveau vers vous pour m'aider à résoudre un problème: j'essaye de récupérer des données dans des labels après un choix fait dans un ComboBox. Je voudrais obtenir le même résultat que si j'utilisais une ListBox. Pourquoi faire compliqué quand on peut faire simple: tout simplement par ce qu'il y aura une meilleure lisibilité du résultat car mon USF (Visualiser Agent) est organisé en fonction de groupe de matériel (Mobilier, Informatique, téléphonie...). Je n'arrive pas à mettre en relation mes Labels par rapport aux lignes concernées.
J'ai beaucoup appris grâce à vous mais je suis encore loin d'être autonome.
Je joins mon fichier.
Par avance merci à ceux qui voudront bien m'apporter l'aide dont j'ai besoin.
 

Pièces jointes

  • Recensement Matériel V1.xlsm
    87.3 KB · Affichages: 25

ChTi160

XLDnaute Barbatruc
Bonsoir
Une réponse a une de tes demandes (je crois) adapter la hauteur du Userform en fonction du Remplissage des Frames !
Je regarde ta dernière demande dès que !
Bonne fin de Journée (de Nuit )
Jean marie
 

Pièces jointes

  • Piment-6.gif
    Piment-6.gif
    843.9 KB · Affichages: 49

Piment

XLDnaute Occasionnel
Bonjour Jean-Marie,
Tout d'abord, merci beaucoup pour ton aide.
Concernant l'USF qui s'adapte en fonction de son contenu: Top, c'est ce que je souhaitais. Par contre comment tu fais ?
En ce qui concerne l'orientation que tu souhaites prendre pour l'USF "Visualiser Direction", je ne pense pas qu'il faille chercher dans cette direction: le ComboBox "Type de Matériel" sera vite ingérable.
Le ComboBox qui pilote le tout est celui de la Direction, puis celui du Service et enfin celui de la Cellule .
J'avais pensé faire un tri à partir du ComboBox "Direction, et ensuite récupérer les données visibles dans les labels. Faire le tri je sais faire, mais pour récupérer les données visibles????
Je vais faire des recherches ce matin.
 

ChTi160

XLDnaute Barbatruc
Bonjour Piment
Tu dis :
"le ComboBox "Type de Matériel" sera vite ingérable." Y'a que toi qui sait lol !
De plus je me suis dis qu'il n'y a qu'une colonne "Quantité" donc comment se fait la répartition entre Direction ,Service et cellule ?
Bonne fin de journée
Jean marie
 

Piment

XLDnaute Occasionnel
Re,
Concernant la Qté, il faudrait pouvoir compter le nombre de bureaux, quelque chose comme: (Range("t_BDD[[#Totals],[Type de Matériel]]"), après avoir récupéré les lignes visibles suite aux filtres: quelque chose comme: t_BDD.UsedRange.SpecialCells(xlCellTypeVisible&). On filtre "Direction", on récupère les lignes de données visibles dans les labels et pour la Qté on compte le nombre de bureau, de chaises....
Je cherche, je cherche, j'essaie, j'essaie....
Je ne sais pas si je te suis d'une grande aide????
En tout cas merci de m'accorder ton aide.
Dans l'attente d'un retour.
 

Piment

XLDnaute Occasionnel
Re,
C'est à dire: un exemple s'il te plaît.
Parce que la Qté on l'a. Il faut pour cela récupérer la cellule de la dernière colonne, qui compte les lignes en fonction du tri.
De mon côté, en utilisant tes codes pour l'USF "Visualiser Agent", j'arrive à récupérer les données du tableau, mais je récupère la totalité des données ; ce qui n'est pas le but.
Une piste peut-être: il faudrait que le tableau temporaire ne contienne que les lignes de tris visibles.
For Lgn = 1 To UBound(Tbl_BDD, 1) 'Pour chaque ligne du tableau temporaire qui contient les valeurs de la Base de Donnée.
A ce moment là, les Labels ne se chargeraient que du contenu de ces lignes en fonction du StrDirection.
La difficulté, pour moi est de récupérer le Lgn Visible (SpecialCells(xlCellTypeVisible) et la dernière ligne de la dernière colonne, qui est la colonne somme ou total ou nombre.
Je ne sais pas si mon raisonnement tient la route???
 

ChTi160

XLDnaute Barbatruc
Re
Arff !
je n'ai surement rien compris à ce que tu veux !
je te mets une vidéo
On a qu'une colonne "Qte" dans la Base de Donnée et sur la même Ligne une colonne Direction , une Service et Une Cellule puis sur la dernière colonne de cette Ligne l'élément Concerné par cette Quantité.
Donc de ce que j'ai compris on doit pouvoir consulter par entité la quantité des elements de la Colonne"K" d'après ce que tu dis :
Du coup si tu effectues un tri :
"Bureau" sur cette colonne (K) , tu obtiens le nombre de bureau recensé dans le tableau, puis effectue un tri sur la colonne Direction (H),
tu choisi "Direction des Services Techniques" et tu obtiens le nombre de "Bureau" de la direction des Services Techniques , puis tu effectues un trie sur la colonne "Services" (I), et tu choisis "Service Intervention et Travaux", tu obtiens le nombre de "Bureau" du service "Service Intervention et Travaux" choisi dans la Direction des Services Techniques" et enfin, tu effectues un tri sur la colonne "Cellule" (J), tu choisis "Cellule Patrimoine Bâti" et tu obtiens le nombre de "Bureau" de cette Cellule.
Mais s'il n'y a que cette Colonne Quantité "C" et si j'ai bien compris , on aura toujours le même Nombre d'éléments , quelle que soit l'entité choisie.
Je n'ai peut-être rien compris, donc explique moi ou est mon erreur (d'interprétation)
Bonne fin de Journée
Jean marie
 

Piment

XLDnaute Occasionnel
Bonjour Jean-Marie,
Je te rassure, tu as tout compris. C'est moi qui me suis mal exprimé. On doit récupérer le total de Qté pour chaque élément dans la Direction, puis dans le Service, puis dans la Cellule. Ce total se trouve sur la dernière ligne du tableau (Ligne Total, "C"). Exemple: "Direction des Services Techniques", "Chaises" Total Qté=4 (Valérie, Valérie), ou "Direction des Services Techniques", "Bureau" Total Qté=2 (Valérie et Barnabé)
A force de chercher, d'essayer, je me suis emmêlé les pinceaux !
Je résume: Dans la Frame: Frm_1 "Mobilier", affichage en LBl _10_01 "Bureau" et en LBl_1_01 le total de bureau dans la Direction choisie.
Puis Frm_1 "Mobilier", affichage en LBl _10_02 "Fauteuil" et en LBl_1_02 le total de Fauteuil....
Désolé pour ce moment d'égarement.
Excellente journée à toi.
 

ChTi160

XLDnaute Barbatruc
Bonjour Piment
Donc on recherche par direction seulement ?
Puisque l'on a qu'une seule colonne Quantité !
Pourrait mettre un exemple avec les labels remplis en fonction de ce qui est possible comme recherche.
Car je ne comprends pas ton système de recherche 3 Frames : Direction ,Service ,Cellule.
Bonne fin de journée
Jean marie
 

Piment

XLDnaute Occasionnel
Re,
Si tu veux bien on va repartir du début.
Je te joint à nouveau un fichier. Ce fichier est celui que j'ai construit au départ. Il me donne le résultat que je cherche à obtenir.
On ouvre l'USF "Visualiser Direction" et dès l'ouverture, j'ai tout le matériel recensé dans le tableau qui s'affiche et cela dans 3 Frames: 1-Mobilier, 2-Informatique,3-Téléphonie. Ne tiens pas compte de la 4ème Frame qui concerne les véhicule (Je vais les traiter sur un autre fichier).
On choisi une direction: "Direction des Services Techniques: tout le matériel recensé dans le tableau affecté à la Direction des Services techniques s'affiche dans les Frames contenues dans la Frame Directions.
Dès lors que l'on a choisi une Direction, la ComboBox "Service" se charge des Services liés à la Direction choisie.
On choisi un Service, et dans la frame Services s'affichent les données du tableau concernant le Service.
Ensuite on choisi une des cellules du Service sélectionné, et s'affichent dans la Frame Cellule les données de la cellule sélectionnée.
A chaque étape, tu verras, en arrière plan les différents filtres se mettre en place, et je récupère, à chaque étape, les données qui ont été filtrées.
Tu vas me dire pourquoi je cherche à faire autrement puisque j'avais réussi à obtenir ce que je voulais?
Tout simplement par ce que le format du tableau ne me convient pas pour la suite du programme (Tableau Croisé Dynamique, graphique...).
J'espère avoir été plus clair dans la formulation du besoin. N'hésite surtout pas si il y a incompréhension.
 

Pièces jointes

  • Recensement Matériel V7.xlsm
    145.5 KB · Affichages: 4

ChTi160

XLDnaute Barbatruc
Re
j'avance mais encore des incompréhensions Lol
quand tu dis :
On choisi une direction: "Direction des Services Techniques: tout le matériel recensé dans le tableau affecté à la Direction des Services techniques
cela veut il dire que dans cette Rubrique exemple "Direction des Services Techniques" . Tu regroupes les données affectées aux Services et Cellules de cette direction ? soit la somme éléments de deux entités ( Services et Cellules) et Non trois !
y'a t'il par exemple des Bureaux affectés à la Direction exemple "Direction des Services Techniques"
Bonne nuit
Jean marie
 
Dernière édition:

Piment

XLDnaute Occasionnel
Bonjour Jean-Marie
C'est pas tout à fait ça. Pour que tu comprennes bien le process au niveau de la "récolte des données":
Tout part de l'Agent, qui est dans une Cellule, Cellule qui est dans un Service, Service qui est dans une Direction.
Il peut y avoir plusieurs agents dans la même cellule qui sont donc doté de matériel. On comptabilise le matériel de tous les agents de la cellule. Le total remonte dans le Service.
Il peut y avoir plusieurs cellule dans le même Service. On comptabilise le matériel dans chaque cellule, et le total remonte dans le Service.
Le Total du Service remonte dans la Direction qui comptabilise les totaux des Services.
Je comprends bien que ma demande n'a pas été bien clair dès le début.
Aussi, je te joins un schéma qui devrait te permettre de mieux comprendre le process.
V9.png
 

Discussions similaires

Réponses
16
Affichages
2 K

Statistiques des forums

Discussions
314 771
Messages
2 112 768
Membres
111 653
dernier inscrit
Vanie0082