[excel] relation combobox et textbox

Résolu
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. 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
    1. 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
      1. 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
        1. 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
          1. 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
            1. 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