Renvoi dans TextBox intersection ligne/colonne

Bonjour à tous,

Après multiple recherches et essais, je demande de l'aide.

Comment écrire le code en VBA pour que suivant le choix fait par la ComboBox 1 (liste colonne 1) et ComboBox 2 (liste ligne 1), l'intersection soit renvoyée dans un TextBox ?

Une fois le choix fait avec la ComboBox 2, est-il possible de renvoyer dans deux TextBox la sélection des deux choix de la ComboBox 1 ?

Et enfin, comment renvoyer les valeurs affichées dans les TextBox dans la feuil2, celulles D11 et D12 ?

Si possible, mettre des commentaires sur les lignes de code que je puisse comprendre la logique.

Fichier joint.

Merci d'avance pour votre aide.

23essai.xlsm (21.30 Ko)

Bonjour

Un essai à tester. Te convient-il ?

Bye !

62essai.xlsm (24.59 Ko)

Ok, merci pour le fichier.

Je regarde cela et je vais voir pour l'adapter à mon cas et avant je vais essayer de comprendre le code.

Si j'ai une question, je reviens. Cela va me prendre un certain temps car je fais autre chose en parallèle.

Je mettrai plus tard en RESOLU, une fois mon adaptation terminée.

Merci

Ok GMB, c'est tout bon.

J'ai procédé à deux modifications car dans le ComboBox 2 le mot "année" apparaissait.

j'ai changé :

Sub Saisies()

    If ComboBox1.ListIndex > -1 And ComboBox2.ListIndex > -1 Then   ' On s'assure que les 2 textbox sont remplis
        ln = 11 + ComboBox1.ListIndex   'le premier choix possible (dans la combobox) est à la ligne 11
        col = 1 + ComboBox2.ListIndex   'le premier choix possible est à la colonne 1
        TextBox1 = Sheets("Feuil1").Cells(ln, col).Value    'on remplit TextBox1
        TextBox2 = Sheets("Feuil1").Cells(11, col).Value    'on remplit TextBox2
        TextBox3 = Sheets("Feuil1").Cells(12, col).Value    'on remplit TextBox3
        Label3.Caption = "Cumul intilulé " & ComboBox1.ListIndex + 1 & " Annéee " & ComboBox2   'on remplit le label de TextBox1
        Label4.Caption = "Cumul intilulé 1" & " Annéee " & ComboBox2                            'on remplit le label de TextBox12
        Label5.Caption = "Cumul intilulé 2" & " Annéee " & ComboBox2                            'on remplit le label de TextBox12
        Sheets("Feuil2").Range("D11") = TextBox2    'On remplit les cellule D11 et D12 de la Feuil2 mais il vaudrait mieux mettre
        Sheets("Feuil2").Range("D12") = TextBox3    'ces deux instructions dans la macro ''Private Sub ComboBox2_Change()''
    End If
End Sub

en

Sub Saisies()

    If ComboBox1.ListIndex > -1 And ComboBox2.ListIndex > -1 Then   ' On s'assure que les 2 textbox sont remplis
        ln = 11 + ComboBox1.ListIndex   'le premier choix possible (dans la combobox) est à la ligne 11
        col = 2 + ComboBox2.ListIndex   'le premier choix possible est à la colonne 1
        TextBox1 = Sheets("Feuil1").Cells(ln, col).Value    'on remplit TextBox1
        TextBox2 = Sheets("Feuil1").Cells(11, col).Value    'on remplit TextBox2
        TextBox3 = Sheets("Feuil1").Cells(12, col).Value    'on remplit TextBox3
        Label3.Caption = "Cumul intilulé " & ComboBox1.ListIndex + 1 & " Annéee " & ComboBox2   'on remplit le label de TextBox1
        Label4.Caption = "Cumul intilulé 1" & " Annéee " & ComboBox2                            'on remplit le label de TextBox12
        Label5.Caption = "Cumul intilulé 2" & " Annéee " & ComboBox2                            'on remplit le label de TextBox12
        Sheets("Feuil2").Range("D11") = TextBox2    'On remplit les cellule D11 et D12 de la Feuil2 mais il vaudrait mieux mettre
        Sheets("Feuil2").Range("D12") = TextBox3    'ces deux instructions dans la macro ''Private Sub ComboBox2_Change()''
    End If
End Sub

et dans :

Private Sub UserForm_Initialize()
With Sheets("Feuil1")
   Me.ComboBox1.List = .Range("A11:A12").Value
   Me.ComboBox2.List = Application.Transpose(Range("A1:Q1"))
End With
End Sub
Private Sub UserForm_Initialize()
With Sheets("Feuil1")
   Me.ComboBox1.List = .Range("A11:A12").Value
   Me.ComboBox2.List = Application.Transpose(Range("B1:Q1"))
End With
End Sub

Par la suite, je n'ai pas utilisé les deux ComboBox créés et je me suis servi de deux autres qui pouvaient m'alimenter les deux TextBox 1 et 2.

Mais bon merci encore GMB et à tous ceux qui apportent leur aide. Cela faisait quelques jours que j'essayais.

Par contre, peux-tu m'expliquer le bout de code :

ComboBox1.ListIndex > -1[/color]

Merci. Bon dimanche.

bipemn a écrit :

peux-tu m'expliquer le bout de code :

ComboBox1.ListIndex > -1[/color]

‘’ComboBox1.ListIndex’’ donne le numéro de l’item sélectionné dans la liste déroulante, en commençant la numérotation à zéro.

Telle que tu la donnes, cette instruction ne veut à mon avis rien dire. Il faut l’associer à autre chose comme, par exemple une condition :

If ComboBox1.ListIndex >1 then
…
End if

Pour ce qui concerne le terme ‘’ ’’ : j’avoue que je nes sais pas…Tout le monde a ses limites !

Ok. Mais c'est le >1 que je ne comprends pas.

Par contre le /Color est une erreur, j'avais voulu mettre les modifications en couleur et ce marquage est resté.

Merci. Bonne soirée.

Rechercher des sujets similaires à "renvoi textbox intersection ligne colonne"