[Résolu] Sélection de données tableau vers userform selon choix d'une combobox

Hicsygrek

XLDnaute Occasionnel
Bonjour à tous !

Suite à mon précédent sujet, la situation a légèrement évoluée.
On me demande en fait de pouvoir tout gérer depuis une fenêtre "détachée" de excel.
J'ai donc entamé la création d'un userform (jusqu'à la semaine dernière j'ignorais que celà existait :D ).

Voici l'idée :
- Je choisi un nom dans une liste déroulante (combobox)
- Apparait alors automatiquement les infos sur :
--- La ou les machines affectée
--- Le poste occupé
--- Le niveau de compétence pour chaque poste

Ces 3 points apparaissant dans 3 frames différents.
--> cf fichier joint (Exemple)

J'ai essayé de reprendre le premier code et l'adapter à la situation mais cela ne fonctionne pas ... ou peut être (surement même) je m'y prends mal.
--> ci joint le premier fichier correspondant à ma première demande où la recherche d'infos était la même (Hicsygrek_Exemple)

La seule transposition demandée est que, au lieu que les infos apparaissent dans les zones colorées (feuil2 Hicsygrek...), que celles-ci apparaissent dans les frames de l'userform (Exemple depuis la feuil1).

Bien entendu, mes fichiers sont une version simplifiée que je me chargerai d'adapter (confidentialité oblige :rolleyes: )

En espérant que ma demande soit la plus clair possible,
je vous remercie d'avance pour les réponses que vous me donnerez :)
 

Pièces jointes

  • Exemple.xlsm
    14.8 KB · Affichages: 134
  • Hicsygrek_ExempleV1(1).xlsm
    19.8 KB · Affichages: 131
  • Exemple.xlsm
    14.8 KB · Affichages: 135
  • Exemple.xlsm
    14.8 KB · Affichages: 137
Dernière édition:

Hicsygrek

XLDnaute Occasionnel
Re : Sélection de données depuis un tableau vers userform selon choix d'une combobox

Bonjour Dranreb,

Possible, j'ignorais que l'on pouvait la diviser en 3 avec BoundColumn ...
Cependant le code n'est toujours pas adapté, il m'indique une erreur si je cherche à vider le contenu de la listbox ...
et en ignorant cette étape, il ne m'affiche rien dans celle-ci ...
 

Dranreb

XLDnaute Barbatruc
Re : Sélection de données depuis un tableau vers userform selon choix d'une combobox

la diviser en 3 avec BoundColumn
Non, avec ColumnCount.
Voir aussi ColumnWidth, "60 pt;60 pt;27 pt" me semble pas mal.
Le code:
VB:
Private Sub ComboBox1_Change()
Dim TV As Variant, L As Long, C As Long
TV = Feuil1.[Noms].Rows(ComboBox1.ListIndex + 1).EntireRow.Value
ListBox1.Clear
For C = 2 To 15
   If TV(1, C) <> "" Then
      ListBox1.AddItem: L = ListBox1.ListCount - 1
      ListBox1.List(L, 0) = Feuil1.Cells(2, C).MergeArea(1, 1).Value
      ListBox1.List(L, 1) = Feuil1.Cells(3, C).Value
      ListBox1.List(L, 2) = TV(1, C)
      End If
   Next C
End Sub
À+
 

Hicsygrek

XLDnaute Occasionnel
Re : Sélection de données depuis un tableau vers userform selon choix d'une combobox

Le code fonctionne parfaitement sur mon exemple, mais quand je l'adapte à mon fichier, la ligne suivante pose problème :

VB:
TV = Feuil1.[Noms].Rows(ComboBox1.ListIndex + 1).EntireRow.Value

Je remplace bien Feuil1 par le nom de la feuille mais ça ne colle pas ...
J'ai également essayé en mettant Feuil3 (qui correspond à Polyvalence).

Est-ce que le fait que ma liste dans la combobox ne soit qu'un extrait de la liste Noms puisse poser problème ?

Merci pour ce que tu as déjà réalisé !
 

Dranreb

XLDnaute Barbatruc
Re : Sélection de données depuis un tableau vers userform selon choix d'une combobox

Je remplace bien Feuil1 par le nom de la feuille
Par le CodeName de la feuille dans le projet VBA, pas par le nom Excel qui y est rappelé à sa droite entre parenthèses. Si la macro doit traiter un autre classeur son CodeName n'est pas utilisable de la sorte. Dans ce cas déclarez une variable As Worksheet et initialisez la convenablement par un Set.
À+
 

Discussions similaires

Statistiques des forums

Discussions
312 088
Messages
2 085 203
Membres
102 818
dernier inscrit
NeoMaint