[excel] relation combobox et textbox

Résolu
ced3c Messages postés 240 Statut Membre -  
ced3c Messages postés 240 Statut Membre -
Bonjour,
j'ai une feuille avec 6 colonnes ( la feuille s appelle "2012")

|1|jour1|jour2|jour3|jour4|jour5|
|2|jour6|jour7|jour8|jour9|jour10|
|3|jour11|jour12|jour13|jour14|jour15|
...

Dans un userform j ai un combobox qui affiche la premiere colonne(soit1,2,3...)
et un textbox qui doit afficher la valeur de la colonne 3 en fonction du combobox

soit par exemple
combobox : 1 textbox : jour2
combobox : 3 textbox : jour12

comment dois je procéder ?

merci pour votre aide

7 réponses

  1. eljojo_e Messages postés 1255 Statut Membre 155
     
    Alors :

    tu dois avoir sur le vba :
    private sub combobox_afterupdate()


    donc tu met ca dedans :

    private sub combobox_afterupdate()
    
    Dim a As Integer
    
    For a = 1 To 9999
    
    If nom_de_combobox = Range("a" & a).Value Then
    
    nom_de_textbox.Value = Range("c" & a).Value
    
    GoTo fin:
    
    End If
    
    Next
    
    fin:
    end sub
    


    Ensuite c'est à modifié en fonction de tes colonnes. mais cela devrai marché
    1
  2. eljojo_e Messages postés 1255 Statut Membre 155
     
    Bonjour,

    Double click sur ta combobox, et tu modifie la procédure vba (en haut a droite) qui doit être "change" par "afterupdate".

    ensuite tu met le code VBA qui va bien.

    Si tu sais pas faire du VBA on peux t'aider.

    Cordialement,
    0
  3. ced3c Messages postés 240 Statut Membre 5
     
    Merci pour ta reponse eljojo

    je ne connais pas beaucoup le vba et je ne sais pas trop comment faire pour construire ce code
    0
  4. ced3c Messages postés 240 Statut Membre 5
     
    Private Sub ComboSemaine_AfterUpdate()
    Dim a As Integer
    For a = 1 To 9999
    If ComboSemaine = Range("a" & a).Value Then
    TextBox2.Value = Range("c" & a).Value
    GoTo fin:
    End If
    Next
    fin:
    End Sub


    J'ai bien noté ceci mais cela n'alimente pas ma textbox.
    Cependant excel n'y trouve pas d'erreur

    il doit me manquer une petite chose encore
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. eljojo_e Messages postés 1255 Statut Membre 155
     
    Bonjour,

    Il ne prennait pas les nombre du coup celui la devrai marcher

    Private Sub ComboSemaine_AfterUpdate()
    Dim a As Integer
    For a = 1 To 9999
    If Val(ComboSemaine.Value) = Range("b" & a).Value Then
    TextBox1.Value = Range("d" & a).Value
    GoTo fin:
    End If
    Next
    fin:
    End Sub
    0
  7. ced3c Messages postés 240 Statut Membre 5
     
    Grand merci eljojo_e

    J'ai juste remplacer
    Private Sub ComboSemaine_AfterUpdate()
    par
    Private Sub ComboSemaine_Change()

    et cela marche très bien :)
    (je ne sais pas trop pourquoi d'ailleurs^^)

    Merci pour le coup de main
    0