Récupérer la ligne d'une valeur dans combobox

Résolu
remy 42 -  
 remy 42 -
Bien le bonjour,

Voici mon énoncé, j'ai un userform dans lequel j'ai 3 combobox et 2 textbox. Un tableau excel où j'ai 5 colonne dont 2 vides. Le userform a pour objet de remplir les 2 colonnes vides selon les 3 pleines. De ce fait, les 3 combobox sont en cascades me permettant d'atteindre une valeur précise et unique dans la 3ème colonne de mon tableau (les 2 premières colonnes pouvant avoir des doublons). Les 2 textbox de mon userform servent à insérer des données dans les 2 cellules juste à côté de la valeur obtenue au bout de ma 3ème combobox.

J'ai déjà réussi à coder mes 3 combobox en cascades, mon souci est donc le fait d'insérer le contenue des 2 textbox à côté de la cellule correspondant à la valeur obtenue dans la 3ème combobox.

J'aimerais, et je pense que cela suffirai, connaitre comment je peux obtenir le numéro de ligne de la valeur obtenue dans ma 3ème combobox.

Par exemple :
x = "numéro de ligne de la valeur de la 3ème combobox"  
cells(x,3)= textbox.aaaa 


J'aimerais connaitre ce qui est égale à x en gros

5 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Pour votre ComboBox3, vous avez defini une plage de cellule. Lorsque vous choisissez une ligne dans votre ComboBox3 vous pouvez recuperer l'index de ce choix par propriete ComboBox3.ListIndex. Sachant que ListIndex commence a 0 vous pouvez facilement trouver la ligne de votre tableau en fonction du choix ComboBox3

    Bonne suite
    1
  2. remy 42
     
    Je vous remercie de m'avoir répondu, cependant je n'ai pas vraiment tout saisie sur comment je dois rédiger tout ça. Si vous pouviez me donner un lien expliquant tout cela ou un exemple voir le mien. S'il vous plait.
    0
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour,
    autre manière:
    tu récupère la ligne sur ta feuille par une syntaxe comme celle ci

    la liste des valeurs se trouve dans la colonne C à partir de la ligne 2; cherche étant ici (exemple) la valeur de ton combo
     Lig = .Columns("C").Find(What:=cherche, after:=Range("C1"), LookIn:=xlValues).Row 
    cells(lig,3)= textbox.aaaa 


    Michel
    0
  4. remy 42
     
    le .columns après le =, il y aime pas trop ^^
    "référence incorrect ou non qualifié"

    Sinon lig est définie comme integer n'est-ce pas ?

    Parce que si je ne met pas le point devant columns, il me surligne la ligne en jaune et me dit "incompatibilité de type"
    0
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      With Sheets("feuil1")
      cherche=combox3.value
      Lig = .Columns("B").Find(What:=cherche, after:=.Range("B2"), LookIn:=xlValues).Row
      Cells(Lig, "C")=textbox.aaa
      T_lig(ordre) = Lig 'mémorise la ligne du mémo en feuil1
      End With

      lig peut être déclaré comme byte, integer ou long suivant la grandeur de ton tableau

      mais tu peux utiliser ce qu'a fait F89 -bonjour :o) - ca marche aussi
      list index te donne la position dans la colonne du combo; il ajouter a listindex le numéro ligne de départ des occurences de ta combo; c'est même d'ailleurs plus simple
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. remy 42
     
    Merci beaucoup, cela fonctionne !!!!
    0