3 pièce(s) jointe(s)
Argument invalide sur ListIndex
Bonjour,
Je viens demander votre aide pour un soucis de suppression de données dans des tableaux.
Je vous explique mon problème :
Dans un calendrier, par clic sur une date, je peux soit ajouter une tache, ayant eu lieu ce jour ou qui aura lieu ce jour, ou aller voir dans une ListBox l'ensemble des taches que nous avons écrites avant :
Pièce jointe 356566
Une fois que les données sont inscrites dans une textBox, un tableau, sur une autre feuille, est rempli avec la date et la tache.
Pièce jointe 356569
Donc en suivant ce raisonnement, en cliquant de nouveau sur la date souhaitée (dans cet exemple le 15 Novembre) puis sur le bouton de résumé des taches, je vois apparaitre les taches correspondant à cette tache dans le tableau.
Pièce jointe 356570
Mon bouton supprimir, par fonction, doit supprimer la tache sélectionnée dans la ListBox, et aussi retirer la tache correspondante dans le tableau pour eviter qu'elle ne reaparaisse à l'ouverture suivante.
Mon soucis est que cette opération fonctionne à chaque fois, mais j'obtiens un message d'argument invalide. Les données sont bien supprimées mais cette erreur est présente à chaque fois.
Je vous explique en commentaire mon code ci-dessous.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
Private Sub CommandButton_Supprimir_Click() 'Cette opération a lieu sur click sur le bouton supprimer
Data 'Il s'agit de la fonction definissant Dates comme un Worksheet (Entre autres)
For i = 1 To Dates.ListObjects("Dates").ListRows.Count ' Dates est le worksheet où est présent le tableau contenant l'ensemble des dates, et "Dates" est le tableau en question
If Dates.ListObjects("Dates").Range(i, 4).Text = Resumo.ListBox_Resumo.Text Then 'La colonne 4 est celle contenant la tache qui est également dans la ListBox, Resumo est le userform, où la ListBox contenant la tache est présente
Dates.ListObjects("Dates").ListRows.Item(i - 1).Delete 'Je supprime la ligne entière du tableau Dates correspondant à la tache sélectionnée dans la ListBox
Resumo.ListBox_Resumo.RemoveItem (Resumo.ListBox_Resumo.ListIndex) ' Je retire la tache sélectionnée dans la ListBox
End If
Next i |
Pour information la valeur de ListIndex au moment de l'erreur est -1.
J'ai la conviction que mon erreur est évidente et facile à corriger mais je ne réussis pas malgré mes modifications à la trouver.
Si l'un de vous peut m'aiguiller ou m'expliquer mon erreur, je suis preneur
Je m'excuse d'avance en cas d'incompréhension et je suis prêt à reexpliquer toute imprécision !
Merci