Supprimer une ligne en fonction d'un texte

Résolu
nanie12 Messages postés 114 Date d'inscription vendredi 9 avril 2010 Statut Membre Dernière intervention 16 août 2011 - 30 juin 2011 à 12:11
NHenry Messages postés 15025 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 - 30 juin 2011 à 14:10
bonjour

j'aimerais supprimer une ligne si elle est égale au texte d'une combobox
exemple

Chantier Produit Quantité Cadence
ddd four 1 trimestre
ddd aspirateur 1 annuel
ddd jifjif 1 semestriel


Private Sub CommandButton1_Click()
Dim x As Integer, chantier As String
If MsgBox("Etes vous sur de vouloir supprimer le chantier " & ComboBox1.Text, vbYesNo) = vbYes Then
x = 8
While Not IsEmpty(Sheets("base de données").Cells(x, 2)) And Sheets("base de données").Cells(x, 2) <> ComboBox1.Text
x = x + 1
Wend
While Not IsEmpty(Sheets("base de données").Cells(x, 2)) And Sheets("base de données").Cells(x, 2) = ComboBox1.Text
Worksheets("base de données").Activate
Rows(x).Delete
x = x + 1
Wend
Else
ComboBox1.ListIndex = -1
ComboBox1.SetFocus
End If

End Sub

nanie

7 réponses

NHenry Messages postés 15025 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
30 juin 2011 à 13:51
Bonjour,

While Not IsEmpty(Sheets("base de données").Cells(x, 2)) And Sheets("base de données").Cells(x, 2) = ComboBox1.Text
Worksheets("base de données").Activate
Rows(x).Delete
x = x + 1
Wend


Quand tu supprime la ligne 5 par exemple, la ligne 6 (qui doit aussi être supprimée), devient la ligne 5, si tu retires
x=x+1
ça devrait fonctionner.

Sinon, je déconseille l'utilisation de While/Wend, Do/Loop est plus souple et plus lisible, je trouves.

Aussi, penses à Indenter ton code, il sera plus lisible.
http://fr.wikipedia.org/wiki/Indenter

Mon site
3
NHenry Messages postés 15025 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
30 juin 2011 à 12:50
Bonjour,

Tu bloques sur quoi ?

Mon site
0
nanie12 Messages postés 114 Date d'inscription vendredi 9 avril 2010 Statut Membre Dernière intervention 16 août 2011
30 juin 2011 à 13:20
le problème c'est que ca ne va pas toutes les lignes qui comportent le nom du chantier

nanie
0
NHenry Messages postés 15025 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
30 juin 2011 à 13:23
Bonjour,

"le problème c'est que ca ne va pas toutes les lignes qui comportent le nom du chantier"

Soit il manque un mot, soit il y a un problème das ta formulation.

Mon site
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nanie12 Messages postés 114 Date d'inscription vendredi 9 avril 2010 Statut Membre Dernière intervention 16 août 2011
30 juin 2011 à 13:39
oui pardon !!
le problème c'est que ca ne supprime pas toutes les lignes qui comportent le nom du chantier
par exemple je veux supprimer 3 lignes, il en reste une non supprimée

nanie
0
nanie12 Messages postés 114 Date d'inscription vendredi 9 avril 2010 Statut Membre Dernière intervention 16 août 2011
30 juin 2011 à 14:04
oui en effet c'était juste ca !
merci pour les info

nanie
0
NHenry Messages postés 15025 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
30 juin 2011 à 14:10
Bonjour,

dr :)

Si ton pb est résolu, pense à mettre "Réponse acceptée" sur le ou les messages qui t'ont aidés.

Mon site
0