Problème d'indice VBA

Bonjour le forum,

Je sollicite votre aide afin de m'aider à trouver la solution qui me bloque.

En effet, dans une feuille j'ai la colonne A qui contient les Noms des opérateur, la colonne B contient le nombre d'heures.

Avec le code (2) ci-dessous j'alimente une listbox dans un userform (elle reprend les valeurs de la colonne A) sous condition [ If Feuil1.Cells(I, 3).Value = "En cours" Then ].

Pour calculer le nombre d'heures de chaque opérateur (le bug), je sélectionne son nom dans la listbox, je mentionne le nombre d'heures dans un textbox et je clique sur le bouton ajouter. Le code qui gère cette opération et qui me mélange les indices est le suivant :

Code (1)

Private Sub CommandButton1_Click()

If MsgBox("Confirmez-vous l'ajout de : " & TextBox1.Value & " " & "Heures ?", vbYesNo, " Demande de confirmation d’ajout ") = vbYes Then

For I = 1 To 10000

If UserForm1.ListBox1.Selected(I) Then

Cells(I + 3, 2) = Cells(I + 3, 2).Value + TextBox1.Value 'je pense que le problème est là

End If

Next I

End If

End Sub

Code (2)

Private Sub UserForm_Initialize()

Sheets("feuil1").Select

Dim I As Integer

UserForm1.ListBox1.Clear

UserForm1.ListBox1.ColumnCount = 1

For I = 1 To Feuil1.Range("A65535").End(xlUp).Row

If Feuil1.Cells(I, 3).Value = "En cours" Then 'Condition

UserForm1.ListBox1.AddItem

UserForm1.ListBox1.List(UserForm1.ListBox1.ListCount - 1, 0) = Feuil1.Cells(I, 1).Value

End If

Next

UserForm1.ListBox1.BoundColumn = 100

UserForm1.ListBox1.ColumnWidths = "100"

End Sub

Ca fait plus de trois jours que je cherche une solution pour lever ce bug mais son sucées.

Je vous remercie d'avance pour votre aide.

ci-joint fichier Excel

5listbox.xlsm (22.55 Ko)

Bonjour

Un essai. Te convient-il?

14listbox-v1.xlsm (30.03 Ko)
gmb a écrit :

Bonjour

Un essai. Te convient-il?

Re-bonjour gmb,

Un très très grand merci pour ton aide c'est nickel, j'ai juste une dernière à te poser s'il te plait. Dans le cas où je rajoute d'autres colonnes à ma listebox, (la colonne C par exemple) qu'est ce qui va changer dans le code ? car dans ce cas là je lui demande de sélectionner la ligne qui contient le Nom est plus le Nom tout seul.

Cordialement

Désolé j'aurais dû essayer avant de te demander mais rien ne change ca marche super bien.

Merci encore une fois.

Vincent

Rechercher des sujets similaires à "probleme indice vba"