Avec le code ci dessous, cela me permet de supprimer une fiche.
Ca fonctionne très bien sauf dans un cas. Lors de la suppression de la
dernière ligne.
Avez vous une idée ?
Merci de votre aide
Cordialement
David
Private Sub CmdSupprimer_Click()
'Boite Confirmation
Dim réponse
réponse = MsgBox(" Etes vous sur de vouloir SUPPRIMER cette fiche ? ",
vbYesNo + vbQuestion, "Validation")
If réponse = vbNo Then Exit Sub
'Récupérer Index
ndx = LstListeVehicule.ListIndex
With Sheets("BD")
.Cells(ndx + 2, 1).Delete '1 est la colonne
.Cells(ndx + 2, 2).Delete
.Cells(ndx + 2, 3).Delete
.Cells(ndx + 2, 4).Delete
.Cells(ndx + 2, 5).Delete
.Cells(ndx + 2, 6).Delete
.Cells(ndx + 2, 7).Delete
.Cells(ndx + 2, 8).Delete
.Cells(ndx + 2, 9).Delete
End With
'recalculer la liste
'Liste_Modes_Paiement
UserForm_Initialize
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour,
Dans un contrôle "listbox" la première donnée débute avec un index de 0. Dans une feuille de calcul la première ligne débute à 1. Le premier item ndx + 2 devrait plutôt être ndx + 1 Pour que le premier item du listbox corresponde à l'item de la première ligne dans la plage de cellules.
"DAVID" a écrit dans le message de groupe de discussion :
Bonjour
Avec le code ci dessous, cela me permet de supprimer une fiche.
Ca fonctionne très bien sauf dans un cas. Lors de la suppression de la dernière ligne.
Avez vous une idée ?
Merci de votre aide
Cordialement David
Private Sub CmdSupprimer_Click()
'Boite Confirmation Dim réponse réponse = MsgBox(" Etes vous sur de vouloir SUPPRIMER cette fiche ? ", vbYesNo + vbQuestion, "Validation") If réponse = vbNo Then Exit Sub
'Récupérer Index ndx = LstListeVehicule.ListIndex
With Sheets("BD") .Cells(ndx + 2, 1).Delete '1 est la colonne .Cells(ndx + 2, 2).Delete .Cells(ndx + 2, 3).Delete .Cells(ndx + 2, 4).Delete .Cells(ndx + 2, 5).Delete .Cells(ndx + 2, 6).Delete .Cells(ndx + 2, 7).Delete .Cells(ndx + 2, 8).Delete .Cells(ndx + 2, 9).Delete End With 'recalculer la liste 'Liste_Modes_Paiement UserForm_Initialize End Sub
Bonjour,
Dans un contrôle "listbox" la première donnée
débute avec un index de 0. Dans une feuille de
calcul la première ligne débute à 1.
Le premier item ndx + 2 devrait plutôt être ndx + 1
Pour que le premier item du listbox corresponde à
l'item de la première ligne dans la plage de cellules.
"DAVID" <direction-ternoise@wanadoo.fr> a écrit dans le message de groupe de discussion :
Od2RLrclKHA.5728@TK2MSFTNGP06.phx.gbl...
Bonjour
Avec le code ci dessous, cela me permet de supprimer une fiche.
Ca fonctionne très bien sauf dans un cas. Lors de la suppression de la
dernière ligne.
Avez vous une idée ?
Merci de votre aide
Cordialement
David
Private Sub CmdSupprimer_Click()
'Boite Confirmation
Dim réponse
réponse = MsgBox(" Etes vous sur de vouloir SUPPRIMER cette fiche ? ",
vbYesNo + vbQuestion, "Validation")
If réponse = vbNo Then Exit Sub
'Récupérer Index
ndx = LstListeVehicule.ListIndex
With Sheets("BD")
.Cells(ndx + 2, 1).Delete '1 est la colonne
.Cells(ndx + 2, 2).Delete
.Cells(ndx + 2, 3).Delete
.Cells(ndx + 2, 4).Delete
.Cells(ndx + 2, 5).Delete
.Cells(ndx + 2, 6).Delete
.Cells(ndx + 2, 7).Delete
.Cells(ndx + 2, 8).Delete
.Cells(ndx + 2, 9).Delete
End With
'recalculer la liste
'Liste_Modes_Paiement
UserForm_Initialize
End Sub
Dans un contrôle "listbox" la première donnée débute avec un index de 0. Dans une feuille de calcul la première ligne débute à 1. Le premier item ndx + 2 devrait plutôt être ndx + 1 Pour que le premier item du listbox corresponde à l'item de la première ligne dans la plage de cellules.
"DAVID" a écrit dans le message de groupe de discussion :
Bonjour
Avec le code ci dessous, cela me permet de supprimer une fiche.
Ca fonctionne très bien sauf dans un cas. Lors de la suppression de la dernière ligne.
Avez vous une idée ?
Merci de votre aide
Cordialement David
Private Sub CmdSupprimer_Click()
'Boite Confirmation Dim réponse réponse = MsgBox(" Etes vous sur de vouloir SUPPRIMER cette fiche ? ", vbYesNo + vbQuestion, "Validation") If réponse = vbNo Then Exit Sub
'Récupérer Index ndx = LstListeVehicule.ListIndex
With Sheets("BD") .Cells(ndx + 2, 1).Delete '1 est la colonne .Cells(ndx + 2, 2).Delete .Cells(ndx + 2, 3).Delete .Cells(ndx + 2, 4).Delete .Cells(ndx + 2, 5).Delete .Cells(ndx + 2, 6).Delete .Cells(ndx + 2, 7).Delete .Cells(ndx + 2, 8).Delete .Cells(ndx + 2, 9).Delete End With 'recalculer la liste 'Liste_Modes_Paiement UserForm_Initialize End Sub
DAVID
Bonjour
Cela supprime la ligne au dessus car ma base dans la feuille est :
Ligne 1 : Entête Ligne 2 à ...... : Données
Merci de ton aide
Cordialement
Bonjour
Cela supprime la ligne au dessus car ma base dans la feuille est :