Pb Combo et Textbox, SVP

Pb Combo et Textbox, SVP - VB/VBA/VBS - Programmation

Marsh Posté le 24-11-2005 à 11:46:12    

:hello: :hello: Bonjour à tous,
Mon pb est le suivant : sur une feuille excel j'ai des listes.
En col A "la liste CR", col B "la liste structures"
Sur ma forme j'ai une cboCR qui contient ma liste (par rowsource) "CR" et une cbounité(vide à l'affichage)
je souhaiterais qu'en choisissant une valeur dans cboCR, avoir uniquement la liste correspondante qui s'affiche dans la cbounité.
schéma :
        A                  B
1.   CR01           Pierre             (ici si choix CR01 dans cboCR ==> affichage dans cbounité de Pierre
2.                    Paul                                                                                                   Paul
3.                    Jacques                                                                                              Jacques
4.   CR02          Henri
5.                    Michèle
..................................
et où mettre ce morceau de code ?
Encore merci pour votre aide
Miguel69

Reply

Marsh Posté le 24-11-2005 à 11:46:12   

Reply

Marsh Posté le 24-11-2005 à 12:58:04    

Tu pourrais mettre ça dans un truc genre cboCR_Change() (ou un truc comme ça...)

Code :
  1. Dim iLine1, iLine2, iNbrLine As Integer
  2. With Worksheets(1)
  3. iNbrLine = 1
  4. 'Nombre de lignes du tableau
  5. While .Cells(iNbrLine, 2).Value <> ""
  6.     iNbrLine = iNbrLine + 1
  7. Wend
  8. iNbrLine = iNbrLine - 1
  9. 'Recherche valeur que tu as entré
  10. iLine1 = 1
  11. While .Cells(iLine1, 1).Value <> cboCR.Text
  12.     iLine1 = iLine1 + 1
  13. Wend
  14. iLine2 = iLine1
  15. 'A partir de la ligne correspondant à ton choix, tu ajoute les éléments à ta deuxième CB
  16. 'jusqu'à avoir une valeur dans la remière colonne
  17. While .Cells(iLine2, 1).Value = "" Or .Cells(iLine2, 1).Value <> cboCR.Text
  18. cbounité.AddItem (.Cells(iLine2, 2).Value)
  19. iLine2 = iLine2 + 1
  20. Wend
  21. End With


 
C à ajuster (au niveau des +1 / -1), C bourrin mais ça devrait marcher...

Reply

Marsh Posté le 24-11-2005 à 15:32:55    

Merci pour ta réponse rapide, c'est sympa.  
J'ai mis le code dans l'événement xxx_change() de ma cbocr. OK. Lorsque je lance la form (no problémo) mais quand je choisis un CR, il "bosse" un moment puis m'envoie une erreur 1004 "erreur définie par l'appli ou par l'objet" ??
Tu vois qq chose ?

Reply

Marsh Posté le 25-11-2005 à 09:28:03    

Essaye de lancer le debugger (execution avec F8), voir où il bloque.
A mon avis C un problème de boucle infinie ou bien de syntaxe sur un de tes objets (Majuscule ???).  
Pour limiter ce genre d'erreur met "Option Explicit" au tout tout début de ton code..

Reply

Marsh Posté le 25-11-2005 à 09:52:37    

Encore merci de ton aide.
La form se lancetrès bien maintenant, dans la cbocr j'ai la 1iste voulue, je choisis un item mais dans lalistbox listunité rien n'apparaît ???

Reply

Marsh Posté le 25-11-2005 à 12:38:21    

T'as utilisé le mode pas à pas ??  
Tu lances le code à cbocr_change() ??? Essaye avec cbocr_click()..
Mais le mieux reste le mode pas à pas (F8), comme ça tu vois bien tout ce qui se passe...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed