Private Sub ok_Click()
Dim i As Long, k As Long, m As Long, Tablo
'Controle si au moins un élément est sélectionné dans la listbox1
'Et affiche un message d'alerte si pas d'élément sélectionné
If cbx1.ListIndex = -1 Then
MsgBox "Sélectionner un élément dans chaque liste .....", vbInformation, "Sélection:"
Exit Sub
End If
'Controle si au moins un élément est sélectionné dans la listbox2
'Et affiche un message d'alerte si pas d'élément sélectionné
If cbx2.ListIndex = -1 Then
MsgBox "Sélectionner un élément dans chaque liste .....", vbInformation, "Sélection:"
Exit Sub
End If
'Controle si le textbox est renseigné et message d'alerte si il est vide
If Textbox1 = "" Then
MsgBox "Entrer un Taux .....", vbInformation, "Saisie Taux:"
Exit Sub
End If
'Géle du rafraichissement de l'écran (accélère légèrement l'éxécution de la macro)
Application.ScreenUpdating = False
'Mise en tableau des éléments de la feuille (3 colonnes A,B,C et 280 lignes de 2 à 281)
Tablo = Range("A2:C" & Range("A65536").End(xlUp).Row)
'Boucle sur les éléments de la listbox1
For i = 0 To cbx1.ListCount - 1
'Si l'élément est sélectionné
If cbx1.Selected(i) Then
'Boucle sur les éléments de la listbox2
For k = 0 To cbx2.ListCount - 1
'Si l'élément est sélectionné
If cbx2.Selected(k) Then
'Boucle sur les éléments du tablo de la ligne 1 à 280
For m = 1 To UBound(Tablo, 1)
'Si l'élement de la 1ère colonne du tableau (l'agent) est le même que celui sélectionné dans la listbox1
'Et si l'élement de la 2èmè colonne du tableau (le mois) est le même que celui sélectionné dans la listbox2
'Alors la troisième colonne du tableau (le taux) recoit la valeur du textbox1
If Tablo(m, 1) = cbx1.List(i) And Tablo(m, 2) = cbx2.List(k) Then Tablo(m, 3) = Textbox1
Next m
End If
Next k
End If
Next i
'Le tableau est recopié sur la feuille, Uboud(Tablo,1) te donne le nombre de ligne du tableau
Range("A2:C" & UBound(Tablo, 1)) = Tablo
'Dégéle de l'ecran
Application.ScreenUpdating = True
End Sub