Problème de combobox!
Biloute
-
Biloute -
Biloute -
Bonjour,
Voila mon petit soucis:
J'ai 2 combobox avec les mêmes valeur "ligne des noms d'équipe" dans chaque colonne se trouvent des noms d'individu faisant partie de chaque équipes.
J'ai 24 autres combo a laquelle je voudrais donc en sélectionnant mes combobox 1 & 2 retrouvais mes lascars de chaque équipe mais je sélectionnerais moi même quel joueur...
J'espère me faire comprendre dans mon exposer. :)
Merci d'avance pour votre aide
Biloute
Voila mon petit soucis:
J'ai 2 combobox avec les mêmes valeur "ligne des noms d'équipe" dans chaque colonne se trouvent des noms d'individu faisant partie de chaque équipes.
J'ai 24 autres combo a laquelle je voudrais donc en sélectionnant mes combobox 1 & 2 retrouvais mes lascars de chaque équipe mais je sélectionnerais moi même quel joueur...
J'espère me faire comprendre dans mon exposer. :)
Merci d'avance pour votre aide
Biloute
A voir également:
- Problème de combobox!
- Propriétés combobox vba ✓ - Forum VB / VBA
- Remplir combobox vba ✓ - Forum Excel
- Combobox vba liste déroulante dynamique ✓ - Forum Excel
- Additem combobox vba ✓ - Forum VB / VBA
- WPF Problème ComboBox - Forum C#
5 réponses
Bonsoir,
ben non, il faudrait commencer par dire quel VB....
et si c'est VBA, word,excel, powerpoint....
J'espère me faire comprendre dans mon exposer. :)
ben non, il faudrait commencer par dire quel VB....
- VBS
- VB6
- VB.Net
- VBA
et si c'est VBA, word,excel, powerpoint....
Bonjour,
Un exemple avec des listbox.
Je trouve plus simple à programmer que 48 combobox...
Le code :
Un exemple avec des listbox.
Je trouve plus simple à programmer que 48 combobox...
Le code :
Option Explicit
Dim rngEquipes As Range
Dim strRngEquip_1 As String
Dim strRngEquip_2 As String
Dim Colonne_1 As String
Dim Colonne_2 As String
Dim indClick_List_1 As Integer
Dim indClick_List_2 As Integer
Private Sub UserForm_Initialize()
indClick_List_2 = 24
Set rngEquipes = Sheets("Feuil1").Range("A1:J1")
ComboBox1.List = Application.Transpose(rngEquipes.Value)
ComboBox2.List = Application.Transpose(rngEquipes.Value)
End Sub
Private Sub ComboBox1_Change()
Dim Col As Integer
Dim rngEquip_1 As Range
If ComboBox1 = "" Then Exit Sub
Col = rngEquipes.Find(ComboBox1).Column
Colonne_1 = Chr(Col + 64)
With Sheets("Feuil1")
Set rngEquip_1 = .Range(.Cells(2, Col), .Cells(25, Col))
strRngEquip_1 = Developpe_Adresse(rngEquip_1)
ListBox1.List = rngEquip_1.Value
End With
End Sub
Private Sub ComboBox2_Change()
Dim Col As Integer
Dim rngEquip_2 As Range
If ComboBox2 = "" Then Exit Sub
Col = rngEquipes.Find(ComboBox2).Column
Colonne_2 = Chr(Col + 64)
With Sheets("Feuil1")
Set rngEquip_2 = .Range(.Cells(2, Col), .Cells(25, Col))
strRngEquip_2 = Developpe_Adresse(rngEquip_2)
ListBox2.List = rngEquip_2.Value
End With
End Sub
Private Sub ListBox1_Click()
Dim rng As Range, strRng As String, Ligne As Long
indClick_List_1 = indClick_List_1 + 1
Me.Controls("Label" & indClick_List_1) = ListBox1.List(ListBox1.ListIndex)
Ligne = Sheets("Feuil1").Columns(Colonne_1).Find(ListBox1.List(ListBox1.ListIndex)).Row
strRngEquip_1 = Replace(strRngEquip_1, "$" & Colonne_1 & "$" & Ligne & ",", "")
If strRngEquip_1 = "" Then Exit Sub
strRng = Left(strRngEquip_1, Len(strRngEquip_1) - 1)
ListBox1.Clear
Set rng = Sheets("Feuil1").Range(strRng)
Rempli_Liste ListBox1, rng
End Sub
Private Sub ListBox2_Click()
Dim rng As Range, strRng As String, Ligne As Long
indClick_List_2 = indClick_List_2 + 1
Me.Controls("Label" & indClick_List_2) = ListBox2.List(ListBox2.ListIndex)
Ligne = Sheets("Feuil1").Columns(Colonne_2).Find(ListBox2.List(ListBox2.ListIndex)).Row
strRngEquip_2 = Replace(strRngEquip_2, "$" & Colonne_2 & "$" & Ligne & ",", "")
If strRngEquip_2 = "" Then Exit Sub
strRng = Left(strRngEquip_2, Len(strRngEquip_2) - 1)
ListBox2.Clear
Set rng = Sheets("Feuil1").Range(strRng)
Rempli_Liste ListBox2, rng
End Sub
Public Function Developpe_Adresse(rng As Range) As String
Dim Cel As Range, strTmp As String
For Each Cel In rng
strTmp = strTmp & "," & Cel.Address
Next Cel
Developpe_Adresse = Right(strTmp, Len(strTmp) - 1) & ","
End Function
Private Sub Rempli_Liste(Liste As MsForms.ListBox, rng As Range)
Dim Cel As Range
For Each Cel In rng
Liste.AddItem Cel.Value
Next Cel
End Sub
pourquoi label?
parce que les noms, une fois cliqués dans la liste sont inscrits dans des labels.
Maintenant, j'ai besoin de savoir si cette méthode te conviens. il s'agit d'un premier jet qui laisse pas mal d'erreurs et est incomplet.
Si cela te va, je reviens demain le compléter et corriger.
--
parce que les noms, une fois cliqués dans la liste sont inscrits dans des labels.
Maintenant, j'ai besoin de savoir si cette méthode te conviens. il s'agit d'un premier jet qui laisse pas mal d'erreurs et est incomplet.
Si cela te va, je reviens demain le compléter et corriger.
--
ça s'affiche bien dans les listeBox. Mais quand je clic sur la LBX2. cà m'affiche :
Erreur d'éxécution -2147024809(80070057) objet spécifié introuvable. La LBX1 vas bien
J'ai tenté de voir si j'avais bien tout modifié. Mais....!?
Biloute
Erreur d'éxécution -2147024809(80070057) objet spécifié introuvable. La LBX1 vas bien
J'ai tenté de voir si j'avais bien tout modifié. Mais....!?
Biloute
Private Sub ListBox2_Click()
Dim rng As Range, strRng As String, Ligne As Long
indClick_List_2 = indClick_List_2 + 1
Me.Controls("Label" & indClick_List_2) = ListBox2.List(ListBox2.ListIndex)
Ligne = Sheets("Equipe").Columns(Colonne_2).Find(ListBox2.List(ListBox2.ListIndex)).Row
strRngEquip_2 = Replace(strRngEquip_2, "$" & Colonne_2 & "$" & Ligne & ",", "")
If strRngEquip_2 = "" Then Exit Sub
strRng = Left(strRngEquip_2, Len(strRngEquip_2) - 1)
ListBox2.Clear
Set rng = Sheets("Equipe").Range(strRng)
Rempli_Liste ListBox2, rng
End Sub
Bon.
Dis moi ce que tu en penses sincèrement :
https://www.cjoint.com/c/FCen0U3wYKE
Il faut :
dans le module1 régler les constantes
Essayer dans l'userform
Il reste des défauts, mais l'essentiel (sauf le bouton enregistrer) est là.
Dis moi ce que tu en penses sincèrement :
https://www.cjoint.com/c/FCen0U3wYKE
Il faut :
dans le module1 régler les constantes
Essayer dans l'userform
Il reste des défauts, mais l'essentiel (sauf le bouton enregistrer) est là.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Le Fichier
Les enregistrements se font feuille Matchs
Tu peux changer les noms dans la première ligne, mais pas changer l'ordre des colonnes
A lundi pour la suite.
Les enregistrements se font feuille Matchs
Tu peux changer les noms dans la première ligne, mais pas changer l'ordre des colonnes
A lundi pour la suite.
1- j'me suis fait une variable tableau qui reprend tous les contrôles dont tu veux sauvegarder le contenu :
J'ai gardé le même ordre que cet array pour les entêtes des colonnes.
Du coup, je n'ai plus qu'à boucler sur la variable tableau pour placer les valeurs.
2- Ex: daniel a gagner et a 2 pts sur trois manches donc il a 33.33% environ. et ainsi de suite. Complexe mais possible non!?
2a- pas compris... Tu veux des stats sur les joueurs?
2b- 2/3 = 66%
Liste_Controles_Ordonnee = Array("ComboEquipe1", "ComboEquipe2", "Score_Eq1", "Score_Eq2", "LabE1_J1", "LabE1_J2", "LabE1_J3", "LabE1_J4", "LabE1_J5", "LabE1_J6", "LabE1_J7", "LabE1_J8", "LabE2_J1", "LabE2_J2", "LabE2_J3", "LabE2_J4", "LabE2_J5", "LabE2_J6", "LabE2_J7", "LabE2_J8", "CBScoreEq1_Match1", "CBScoreEq1_Match2", "CBScoreEq1_Match3", "CBScoreEq1_Match4", "CBScoreEq1_Match5", "CBScoreEq1_Match6", "CBScoreEq1_Match7", "CBScoreEq1_Match8", "CBScoreEq2_Match1", "CBScoreEq2_Match2", "CBScoreEq2_Match3", "CBScoreEq2_Match4", "CBScoreEq2_Match5", "CBScoreEq2_Match6", "CBScoreEq2_Match7", "CBScoreEq2_Match8", "LabDoublesE1_M1", "LabDoublesE2_M1", "CBScoreEq1_MatchD1", "CBScoreEq2_MatchD1", "LabDoublesE1_M2", "LabDoublesE2_M2", "CBScoreEq1_MatchD2", "CBScoreEq2_MatchD2")
J'ai gardé le même ordre que cet array pour les entêtes des colonnes.
Du coup, je n'ai plus qu'à boucler sur la variable tableau pour placer les valeurs.
2- Ex: daniel a gagner et a 2 pts sur trois manches donc il a 33.33% environ. et ainsi de suite. Complexe mais possible non!?
2a- pas compris... Tu veux des stats sur les joueurs?
2b- 2/3 = 66%
Voir ici la procédure pour poster un code:
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code%20la%20coloration%20syntaxique
Je n'ai pas encore cette partie.J'ai juste balancer quelques codes. Mais elles sont basic.
C'était juste pour l'idée code de démarrage ou trouver le bon tuto.
A plus
Biloute