Problème Listbox [Résolu]

François - 20 févr. 2014 à 12:00 - Dernière réponse :  François
- 20 févr. 2014 à 17:40
Bonjour,

J'ai créé une listbox qui recueille une série de donnée et l'utilisateur doit faire un ou plusieurs choix dans cette liste.

Le souci c'est que lorsque j'ouvre l'userform, j'ai déjà des valeurs qui sont pré-sélectionnées. Je ne parviens pas à savoir pourquoi ces valeurs sont sélectionnées 1 coup et qu'elles ne le sont pas une autre fois.

Je vous mets ci-dessous l'initialize de l'userform. La listbox en question est la listbox1.

Un très grand merci d'avance !

--------------------------------
Private Sub UserForm_Initialize()

'Tri de la liste utilisée dans la listbox1
Sheets("BDDListes").Select
lig1 = Sheets("BDDListes").Range("A100000").End(xlUp).Row
lig2 = Sheets("BDDListes").Range("B100000").End(xlUp).Row
lig3 = Sheets("BDDListes").Range("C100000").End(xlUp).Row
lig4 = Sheets("BDDListes").Range("D100000").End(xlUp).Row
lig = Application.WorksheetFunction.Max(lig1, lig2, lig3, lig4)
Range(Cells(2, 1), Cells(lig, 4)).Sort Key1:=Range("B1")
lig2 = Sheets("BDDListes").Range("B100000").End(xlUp).Row

'Source de la listbox1
If lig2 = 1 Then
ListBox1.RowSource = "BDDListes!B2:B2"
Else
ListBox1.RowSource = "BDDListes!B2:B" & lig2
End If
Sheets("JourInventaire").Select

End Sub
Afficher la suite 

Votre réponse

16 réponses

Meilleure réponse
jordane45 22872 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 17 octobre 2018 Dernière intervention - Modifié par jordane45 le 20/02/2014 à 17:33
2
Merci
Ah ben.. il semble que ton USF apparaisse pile au dessus de ton bouton et ta listbox se trouve pile au dessus de cette zone ( a droite de ton T )..
Donc tu cliques.. l' USF apparait.. tu relaches ton clique ( c'est super rapide mais ça suffit).. c'est comme si tu cliquais sur ta listbox en fait...

Déplace ton bouton.. ou l'affichage de ton USF..

Edit : Par exemple en ajoutant ça à la fin de ton Initialize()

Me.StartUpPosition = 0
    Me.Top = Application.Top + 25
    Me.Left = 100

Merci jordane45 2

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de jordane45
pijaku 12204 Messages postés jeudi 15 mai 2008Date d'inscriptionModérateurStatut 13 septembre 2017 Dernière intervention - Modifié par pijaku le 20/02/2014 à 15:07
1
Merci
Bonjour,

Sans plus amples informations, en particulier ton code "ouvrant" et "fermant" l'UserForm, nous ne pouvons que supputer.
Supputons donc.
Tu dis :
Je ne parviens pas à savoir pourquoi ces valeurs sont sélectionnées 1 coup et qu'elles ne le sont pas une autre fois.
Je pencherai donc sur une "ouverture" et/ou "fermeture" de ton UserForm sans initialisation, comme ceci :
' à la "fermeture"
UserForm1.Hide
' à l'"ouverture" :
UserForm1.Show


Si tu ne fais que le cacher (Hide) et non le "décharger de la mémoire" (UnLoad), les présélections précédentes de ta ListBox seront toujours sélectionnées...

Essaie de le fermer en utilisant :
UnLoad Me


EDIT : ajout des guillemets

Cordialement,
Franck
Commenter la réponse de pijaku
jordane45 22872 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 17 octobre 2018 Dernière intervention - 20 févr. 2014 à 13:42
0
Merci
Bonjour,
Je me suis permis d'éditer ton message pour y ajouter les balises de code.
Merci d'y penser lors de tes prochains messages.
Commenter la réponse de jordane45
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 20 févr. 2014 à 14:02
0
Merci
Bonjour,
le code montré n'a aucune espèce d'influence sur la pré-sélection que tu constates.
Commenter la réponse de ucfoutu
0
Merci
Du coup si le code n'a pas d'influence, quelle peut en être la cause ?
Commenter la réponse de François
jordane45 22872 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 17 octobre 2018 Dernière intervention - Modifié par jordane45 le 20/02/2014 à 15:15
0
Merci
La selection dans tes listbox apparait systématiquement ?
par exemple : dès le lancement de ton programme la première fois ?


EDIT : Je viens de voir ce commentaire :
ces valeurs sont sélectionnées 1 coup et qu'elles ne le sont pas une autre fois.

Les fois où elles sont séléctionnées.. ne serait-ce pas après avoir déjà commencé à utiliser ton programme ?
Par exemple à un moment donné tu masque ton userform ( userform.hide ) puis te le réaffiche et là tu as des choses de sélectionné ??
Si c'est ça.. c'est simplement du au fait que tu n'a pas "détruit" ton userform avant de le réouvrir..donc il concerve les infos telles que tu les as laissé en masquant ton USF.

Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
Bonjour et merci de ta réponse !

J'ouvre/Je ferme le userform systématiquement de la même manière (aucune action, aucune sélection dans la listebox, juste sortir du userform) plusieurs fois, le 1/3 du temps (de manière aléatoire) j'ai des valeurs sélectionnées, les 2/3 rien de sélectionné.
Le souci c'est que je n'arrive pas à voir de logique à l'apparition de ces sélections alors qu'il y en a forcément une.
Commenter la réponse de jordane45
0
Merci
Merci pour les pistes, je ferme bien les userform avec le unload à la fin. Par contre j'utilise show à l'ouverture. Ca ne serait donc pas ça ?
Je vais recréer une autre listbox en partant de rien, voir si ce n'est pas une histoire de popriété
Quand je clic sur une zone du bouton de macro ça le fait à chaque fois et jamais le reste du temps =)
pijaku 12204 Messages postés jeudi 15 mai 2008Date d'inscriptionModérateurStatut 13 septembre 2017 Dernière intervention - 20 févr. 2014 à 17:03
Quand je clic sur une zone du bouton de macro ça le fait à chaque fois et jamais le reste du temps =)
Me semble bien impossible, à moins que...

A ce point, sans classeur exemple (sans données confidentielles), il sera malaisé de te répondre.
Pour transmettre un fichier sur ce site, il convient, au préalable, de créer un lien vers ce fichier en utilisant http://cjoint.com et de revenir coller le lien fournit, ici, dans une réponse.
Le fichier appuré :

http://cjoint.com/?3Buroy4RAIS
J'ai le problème en cliquant un peu en haut à droit du "t" de début
Commenter la réponse de François
0
Merci
Ok la voilà la logique =) merci beaucoup
Commenter la réponse de François

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.