Supprimer une ligne en fonction d'un texte [Résolu]

Messages postés
114
Date d'inscription
vendredi 9 avril 2010
Statut
Membre
Dernière intervention
16 août 2011
- - Dernière réponse : NHenry
Messages postés
14595
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 novembre 2019
- 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
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
14595
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 novembre 2019
137
3
Merci
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 224 internautes nous ont dit merci ce mois-ci

Commenter la réponse de NHenry
Messages postés
14595
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 novembre 2019
137
0
Merci
Bonjour,

Tu bloques sur quoi ?

Mon site
Commenter la réponse de NHenry
Messages postés
114
Date d'inscription
vendredi 9 avril 2010
Statut
Membre
Dernière intervention
16 août 2011
0
Merci
le problème c'est que ca ne va pas toutes les lignes qui comportent le nom du chantier

nanie
Commenter la réponse de nanie12
Messages postés
14595
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 novembre 2019
137
0
Merci
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
Commenter la réponse de NHenry
Messages postés
114
Date d'inscription
vendredi 9 avril 2010
Statut
Membre
Dernière intervention
16 août 2011
0
Merci
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
Commenter la réponse de nanie12
Messages postés
114
Date d'inscription
vendredi 9 avril 2010
Statut
Membre
Dernière intervention
16 août 2011
0
Merci
oui en effet c'était juste ca !
merci pour les info

nanie
Commenter la réponse de nanie12
Messages postés
14595
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 novembre 2019
137
0
Merci
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
Commenter la réponse de NHenry