[RESOLU] Problème combobox et listindex ... remplir cellules

Bulr6

XLDnaute Nouveau
Bonjour à tous,

Je vais à nouveau solliciter vos lumières.
J'ai réaliser un fichier qui m'aide à attribuer des identifiants (ID + MDP).
Jusque là tout fonctionnait très bien ... j'ai 10 ID et via une combobox dans un UF je pouvais en sélectionner un puis insérer les informations demandées dans ma feuille. Vous verrez ce sera plus clair avec le fichier.

Mais voilà, j'ai voulu améliorer mon système et n'afficher dans ma combobox que les ID qui seraient "libre" ... Pour cela j'ai juste ajouté un IF vérifiant le texte "identifiant libre" dans une colonne.
Et patatras !!! Maintenant quand j'enregistre les informations, celles ci ne se mettent plus dans la ligne correspondante.

Et franchement c'est surement une connerie mais je ne trouve pas. Alors, je remercie d'avance ceux qui prendront la peine de se pencher sur mon problème.
 

Pièces jointes

  • testcombobox.xlsm
    43.1 KB · Affichages: 45
Dernière édition:

Alza

XLDnaute Junior
Re : Problème combobox et listindex ... remplir cellules

Bonjour,
J'ai regardé rapidement et en effet c'est tout bête, tu attribues en lui disant "à la ligne ListIndex" lors du click sur ton bouton valider .. Ne cherche pas plus loin, tu ne lui as donné que certaines lignes :
Code:
If Range("H" & J) = "Identifiant libre" Then
        Me.ComboBox1.AddItem Range("B" & J)
        End If
    Next J
+
 Feuil1.Cells(ComboBox1.ListIndex + 3, 4) = TextBox2.Value
= Erreur

Exemple : id= libre : ligne 1, id = xxx : ligne 2, id =libre : ligne 3
L'index de ta cb prend ligne 1 en première valeur et ligne 3 en 2ème valeur, Donc si tu enregistres bah, il te le fout ligne 2 !

A toi de voir comment corriger ça ;)
Alza'
 
Dernière modification par un modérateur:

youky(BJ)

XLDnaute Barbatruc
Re : Problème combobox et listindex ... remplir cellules

Bonjour,
Un truc fort simple que j'utilise.
Mettre le combobox1 à 2 colonnes mais ne se voie pas.
Pour cela en propriété du combo
Columncount= 2
ColumnWidths=168
Dans le code de l'init ou remplissage du combo
Set Ws = Sheets("ID")
With Me.ComboBox1
For J = 3 To Ws.Range("B" & Rows.Count).End(xlUp).Row
If Range("H" & J) = "Identifiant libre" Then
.AddItem Range("B" & J)
.List(.ListCount - 1, 1) = J
End If
Next J
End With

Maintenant pour retrouver la bonne ligne en bouton valider
lig = ComboBox1.List(ComboBox1.ListIndex, 1)
MsgBox lig 'pour voir le N°
et remplacer tous les combobox1.listindex par.......lig
Cela est terminé et pas trop de ligne de code
Bruno
 

Bulr6

XLDnaute Nouveau
Re : Problème combobox et listindex ... remplir cellules

Bonjour,
Un truc fort simple que j'utilise.
Mettre le combobox1 à 2 colonnes mais ne se voie pas.
Pour cela en propriété du combo
Columncount= 2
ColumnWidths=168
Dans le code de l'init ou remplissage du combo
Set Ws = Sheets("ID")
With Me.ComboBox1
For J = 3 To Ws.Range("B" & Rows.Count).End(xlUp).Row
If Range("H" & J) = "Identifiant libre" Then
.AddItem Range("B" & J)
.List(.ListCount - 1, 1) = J
End If
Next J
End With

Maintenant pour retrouver la bonne ligne en bouton valider
lig = ComboBox1.List(ComboBox1.ListIndex, 1)
MsgBox lig 'pour voir le N°
et remplacer tous les combobox1.listindex par.......lig
Cela est terminé et pas trop de ligne de code
Bruno

Excellent c'est exactement ça !!! ça fonctionne parfaitement. Je vais me pencher dessus car je ne comprends pas encore bien mais en tout cas ça fonctionne.
UN grand merci
 

Statistiques des forums

Discussions
312 345
Messages
2 087 476
Membres
103 553
dernier inscrit
jhnm