batteur_fou
Messages postés15Date d'inscriptionmardi 26 juin 2007StatutMembreDernière intervention22 décembre 2007
-
17 nov. 2007 à 11:49
batteur_fou
Messages postés15Date d'inscriptionmardi 26 juin 2007StatutMembreDernière intervention22 décembre 2007
-
17 nov. 2007 à 21:07
Bonjou à tous, j'apporte une petite colle en ce début de weekend!
Mon problème est le suivant:
-j'ai un tableau à 2 colonnes de string qui contiennent par exemple le nom d'un objet dans la première colonne, et sa couleur dans la deuxieme. Admettons que j'ai deux objets Objet1 et Objet2, le premier en 3 couleurs (rouge, vert, bleu) et le deuxième en deux (rouge et bleu).
J'ai donc un tableau Tableau(5,2)
-mon problème est de savoir comment faire pour évité, lorsque je crée une combobox contenant les noms des objets d'avoir 3 fois Objet1 et 2 fois Objet2.
-deplus j'aimerai que une fois l'objet sélectionnén je puisse sélectionner sa couleur (pas de soucis pour cela), et quand j'appuie sur un bouton, il me supprime la ligne (objet,couleur). Par exemple, je sélectionne Objet2 en rouge, je veux que le tableau soit Tableau(4,2) avec Objet1 en rouge, vert, bleu et Objet deux en bleu.
Voilà, j'espère que ma question est assez claire...
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 17 nov. 2007 à 14:44
Si tu ne veux pas répéter le nom Objet1 dans ton Combobox, tu ne pourras donc plus savoir de quelle couleur d'objet il s'agit. Autrement, il faudrait que tu ajoutes la couleur à Objet1 et donc Objet1 devra se répéter...
batteur_fou
Messages postés15Date d'inscriptionmardi 26 juin 2007StatutMembreDernière intervention22 décembre 2007 17 nov. 2007 à 17:20
Euh non, j'ai pas tout compris là...
Voilà mon tableau exemple :
| Objet1, rouge |
| Objet1, vert |
| Objet1, bleu |
| Objet2, rouge |
| Objet2, bleu |
Je souhaite que ma premiere combobox affiche Objet1 et Objet2 (et non Objet1,Objet1,Objet1,Objet2,Objet2), l'autre combobox étant inactive. Puis, lorsque j'ai choisi mon objet, la seconde m'affiche les couleurs correspondantes à cet objet.
Enfin lorsque je clique sur un bouton " OK ", j'aimerai que mon tableau soit modifier, l'objet sélectionné avec sa couleur en moins. Par exemple, si je sélectionnait Objet2 en rouge, mon tableau deviendrait :
| Objet1, rouge |
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 17 nov. 2007 à 20:38
Donc, lorsque tu charges un de tes combobox, vérifie si l'item y est déjà.
Tu peux utiliser une fonction comme celle-ci
Function IsInList(Valeur As Variant, Controle As Control) As Boolean
Dim I As Integer
For I = 0 To Controle.ListCount - 1
If CStr(Valeur) = Controle.List(I) Then
IsInList = True
Exit For
End If
Next
End Function
Tu n'as donc qu'à vérifier si la donnée est dans la liste avant de la charger
....
If Not IsInList(MaValeur, Combobox1) Then
Combobox1.AddItem MaValeur