Bonjour à tous,
Après avoir beaucoup appris sur le vba en arpentant ce forum à la recherche des différents codes dont j'avais besoin,
Me voici pour la première fois face à un problème dont je n'arrive pas à trouver la solution dans les différents topics.
Je vais donc essayer de vous décrire au mieux la situation:
J'ai, dans un userform, une listbox qui reprend les colonnes d'un tableau du classeur,
Quand je sélectionne des lignes de cette listbox, je voudrais que la date du jour s'affiche à droite des lignes correspondantes dans le tableau.
De là, une colonne affichera "Validé", et je saurais dans ma listbox que cette ligne est validée.
En gros, cela me permettrait de pointer mes lignes de comptes dans le cadre d'un suivi budgétaire.
Le code fonctionne, mais uniquement pour la première ligne sélectionnée, et je n'arrive pas à trouver la solution pour que les autres lignes soient bien prises en compte.
Le code est le suivant :
Sub Test_si_selection()
Dim element_select As Boolean
Dim nb_elements, I As Integer
element_select = False
nb_elements = Pointage_dépenses.Sélection_dépenses.ListCount
For I = 0 To nb_elements - 1
If Pointage_dépenses.Sélection_dépenses.Selected(I) = True Then
element_select = True
Fact = Pointage_dépenses.Sélection_dépenses.Column(2, I)
Fact2 = Pointage_dépenses.Sélection_dépenses.Column(4, I)
Worksheets("Tableau").Activate
Dim C As Range
For Each C In Range("c3:e212")
If Not C = "" Then
If C = Fact And C.Offset(0, 2) = Fact2 Then
C.Offset(0, 4).Value = Date
End If
End If
Next C
Exit For
End If
Next I
If element_select = False Then
MsgBox "Aucune ligne sélectionnée!!!"
Exit Sub
End If
End Sub
Et bien sur le fichier d'exemple complet pour que ce soit plus clair.
J'espère n'avoir pas été trop confus, et vous remercie d'avance pour toute l'aide que vous saurez m'apporter!