Remplir une ListBox par Tableau

Le
Péhemme
Bonjour à Tous,

Dans un UserForm, après la validation du choix d'une journée, la macro
remplit une ListBox.
La présentation de cette ListBox fonctionne, à ce stade, parfaitement bien
pour toutes les journées SAUF la 1.
Je ne trouve pas pourquoi.

Merci d'avance à celui qui saura m'expliquer mon erreur.

Aux fins de tests vous trouverez un fichier :
https://cjoint.com/c/IFcl4dBrKKS

Michel
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #26518021
Le 02/06/19 à 07:59, Péhemme a écrit :
Bonjour à Tous,
Dans un UserForm, après la validation du choix d'une journée, la macro
remplit une ListBox.
La présentation de cette ListBox fonctionne, à ce stade, parfaitement
bien pour toutes les journées SAUF la 1.
Je ne trouve pas pourquoi.
Merci d'avance à celui qui saura m'expliquer mon erreur.
Aux fins de tests vous trouverez un fichier :
https://cjoint.com/c/IFcl4dBrKKS
Michel


Bonjour,
Voir ton fichier, j'ai identifié la ligne de code que j'ai modifiée.
https://cjoint.com/c/IFcn6Kd7Ghj
MichD
Péhemme
Le #26518024
Bonjour Denis,
Merci de ton aide, mais je ne vois aucune différence dans la présentation de
la journée : 1.
La ListBox est toujours sur 2 lignes (nom de l'équipe, ligne du dessous :
classement).
Dans tous les autres cas (journées 2 à 38) la rédaction de la ListBox est
bien sur une seule ligne (classement, nom de l'équipe) : ce que je cherche à
obtenir également pour la journée 1.
Bonne fin de dimanche
Michel
"MichD" a écrit dans le message de groupe de discussion :
qd0kob$1une$
Le 02/06/19 à 07:59, Péhemme a écrit :
Bonjour à Tous,
Dans un UserForm, après la validation du choix d'une journée, la macro
remplit une ListBox.
La présentation de cette ListBox fonctionne, à ce stade, parfaitement bien
pour toutes les journées SAUF la 1.
Je ne trouve pas pourquoi.
Merci d'avance à celui qui saura m'expliquer mon erreur.
Aux fins de tests vous trouverez un fichier :
https://cjoint.com/c/IFcl4dBrKKS
Michel


Bonjour,
Voir ton fichier, j'ai identifié la ligne de code que j'ai modifiée.
https://cjoint.com/c/IFcn6Kd7Ghj
MichD
MichD
Le #26518034
Le 02/06/19 à 10:34, Péhemme a écrit :
Bonjour Denis,
Merci de ton aide, mais je ne vois aucune différence dans la
présentation de la journée : 1.
La ListBox est toujours sur 2 lignes (nom de l'équipe, ligne du dessous
: classement).
Dans tous les autres cas (journées 2 à 38) la rédaction de la ListBox
est bien sur une seule ligne (classement, nom de l'équipe) : ce que je
cherche à obtenir également pour la journée 1.

Bonjour,
Une image du contenu du listbox
https://cjoint.com/c/IFcqvLlLk3j
Les données du listbox sont sur 2 colonnes différentes
et représentent bien le contenu des 2 colonnes retenues.
Si tu veux autre chose, explique-moi.
Que doit contenir le listbox et quel doit être la présentation des
données dans le listbox
MichD
Péhemme
Le #26518036
"MichD" a écrit dans le message de groupe de discussion :
qd0tan$160f$
Le 02/06/19 à 10:34, Péhemme a écrit :
Bonjour Denis,
Merci de ton aide, mais je ne vois aucune différence dans la présentation
de la journée : 1.
La ListBox est toujours sur 2 lignes (nom de l'équipe, ligne du dessous :
classement).
Dans tous les autres cas (journées 2 à 38) la rédaction de la ListBox est
bien sur une seule ligne (classement, nom de l'équipe) : ce que je cherche
à obtenir également pour la journée 1.

Bonjour,
Une image du contenu du listbox
https://cjoint.com/c/IFcqvLlLk3j
Les données du listbox sont sur 2 colonnes différentes
et représentent bien le contenu des 2 colonnes retenues.
Si tu veux autre chose, explique-moi.
Que doit contenir le listbox et quel doit être la présentation des
données dans le listbox
MichD
Oui Denis, l'image que tu présentes concerne la journée 9 ; c'est
effectivement la présentation que je souhaite.
Cette présentation est correcte sauf pour la journée 1 qui malheureusement
se présente comme suit :
https://www.cjoint.com/c/IFcqKiDw58S
Merci encore de ton aide.
Michel
MichD
Le #26518040
Bonjour,
Désolé, mais ça me prend un certain temps pour comprendre, je ne sais
pas lire! ;-)
Tout semble OK.
https://cjoint.com/c/IFcrik0WzWj
Attention :
L'union de deux colonnes adjacentes ne forme qu'un "AREAS" contrairement
à deux colonnes non adjacentes constituant "AREAS". J'ai par conséquent
modifié légèrement la procédure.
MichD
Péhemme
Le #26518042
Je ne te dis pas que tu es le meilleur car tu finirais par le croire.
;-)))
Mille mercis bien sûr.
Cependant, pourquoi ce contrôle sur > 1 dans la macro et donc le rôle de T
?
Il ne me reste plus qu'à trier ce tableau en fonction du classement pour une
lecture plus facile... Cela va être une autre paire de manches, mais il faut
que j'apprenne à maitriser ces f... tableaux.
Bien amicalement
Michel
"MichD" a écrit dans le message de groupe de discussion :
qd103k$1inh$
Bonjour,
Désolé, mais ça me prend un certain temps pour comprendre, je ne sais
pas lire! ;-)
Tout semble OK.
https://cjoint.com/c/IFcrik0WzWj
Attention :
L'union de deux colonnes adjacentes ne forme qu'un "AREAS" contrairement
à deux colonnes non adjacentes constituant "AREAS". J'ai par conséquent
modifié légèrement la procédure.
MichD
Péhemme
Le #26518043
Pardon, je n'avais pas lu ton message jusqu'au bout.
C'est donc l'utilisation de Areas qui me posait problème.
Sachant que par construction il n'y a que 2 colonnes, je peux essayer de me
simplifier la vie...
Au départ je mettais 3 colonnes, mais cela alourdissait la lecture...
Merci encore de ton aide un dimanche qui fut, sur les bords de la
méditerranée, ensoleillé.
Bien amicalement
Michel
"MichD" a écrit dans le message de groupe de discussion :
qd103k$1inh$
Bonjour,
Désolé, mais ça me prend un certain temps pour comprendre, je ne sais
pas lire! ;-)
Tout semble OK.
https://cjoint.com/c/IFcrik0WzWj
Attention :
L'union de deux colonnes adjacentes ne forme qu'un "AREAS" contrairement
à deux colonnes non adjacentes constituant "AREAS". J'ai par conséquent
modifié légèrement la procédure.
MichD
MichD
Le #26518046
Si tu fais référence à ceci :
'---------------------
V = Me.ComboBox1.Value
If V > 1 Then
NbCol = Rng.Areas.Count
Else
NbCol = 2
End If
'---------------------
Quand tu choisis la valeur 1 dans le combobox,
Tu as 2 plages de cellules
Set Champ2 = .Range("B6:B25")
Set champ3 = .Range(.Cells(6, Col), .Cells(25, Col))
Set Rng = Union(champ3, Champ2)
En fait, tu as la plage B6:C25, deux colonnes adjacentes. Les 2 colonnes
ne forment qu'UN AREAS.
Dans la plage Tableau(Rng) tu définissais le nombre de colonnes de la
plage comme ceci : NbCol = Rng.Areas.Count
Lorsque tu choisissais 1 dans le combobox, toutes les valeurs se
retrouvaient dans la même colonne du listbox, puisqu'il n'y avait qu'UN
Areas, par conséquent qu'une colonne.
Dans la procédure "Private Sub btn_Valider_Click()", ceci est suffisant
pour définir la plage de cellule Set Rng = Union(champ3, Champ2), le
test avec If else end if est inutile.
MichD
Péhemme
Le #26518045
Merci pour l'explication, je pense avoir compris.
Michel
"MichD" a écrit dans le message de groupe de discussion :
qd125n$1ro9$
Si tu fais référence à ceci :
'---------------------
V = Me.ComboBox1.Value
If V > 1 Then
NbCol = Rng.Areas.Count
Else
NbCol = 2
End If
'---------------------
Quand tu choisis la valeur 1 dans le combobox,
Tu as 2 plages de cellules
Set Champ2 = .Range("B6:B25")
Set champ3 = .Range(.Cells(6, Col), .Cells(25, Col))
Set Rng = Union(champ3, Champ2)
En fait, tu as la plage B6:C25, deux colonnes adjacentes. Les 2 colonnes
ne forment qu'UN AREAS.
Dans la plage Tableau(Rng) tu définissais le nombre de colonnes de la
plage comme ceci : NbCol = Rng.Areas.Count
Lorsque tu choisissais 1 dans le combobox, toutes les valeurs se
retrouvaient dans la même colonne du listbox, puisqu'il n'y avait qu'UN
Areas, par conséquent qu'une colonne.
Dans la procédure "Private Sub btn_Valider_Click()", ceci est suffisant
pour définir la plage de cellule Set Rng = Union(champ3, Champ2), le
test avec If else end if est inutile.
MichD
MichD
Le #26518044
Tu aurais pu insérer une colonne entre la colonne B et C, la colonne C
serait devenue D et tu n'avais qu'à masquer la colonne C. cela aurait
évité de modifier le code! ;-)
MichD

Le 02/06/19 à 13:41, Péhemme a écrit :
Pardon, je n'avais pas lu ton message jusqu'au bout.
C'est donc l'utilisation de Areas qui me posait problème.
Sachant que par construction il n'y a que 2 colonnes, je peux essayer de
me simplifier la vie...
Au départ je mettais 3 colonnes, mais cela alourdissait la lecture...
Merci encore de ton aide un dimanche qui fut, sur les bords de la
méditerranée, ensoleillé.
Bien amicalement
Michel
"MichD"  a écrit dans le message de groupe de discussion :
qd103k$1inh$
Bonjour,
Désolé, mais ça me prend un certain temps pour comprendre, je ne sais
pas lire! ;-)
Tout semble OK.
https://cjoint.com/c/IFcrik0WzWj
Attention :
L'union de deux colonnes adjacentes ne forme qu'un "AREAS" contrairement
à deux colonnes non adjacentes constituant "AREAS". J'ai par conséquent
modifié légèrement la procédure.
MichD
Publicité
Poster une réponse
Anonyme