A voir également:
- VBA : supprimer une ligne contenant un mot
- Incompatibilité de type vba ✓ - Forum Programmation
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Vba dernière colonne non vide ✓ - Forum VB / VBA
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
- Mkdir vba ✓ - Forum VB / VBA
5 réponses
ShaBoo
Messages postés
392
Date d'inscription
mercredi 12 septembre 2007
Statut
Membre
Dernière intervention
5 septembre 2009
50
12 nov. 2007 à 11:46
12 nov. 2007 à 11:46
Bonjour,
un code comme celui ci peut-il repondre à ta demande ?
un code comme celui ci peut-il repondre à ta demande ?
With Worksheets(1).Range("A1:A500" ) Set c = .Find("affecté", LookIn:=xlValues) If Not c Is Nothing Then Do Debug.Print c.Address Set c = .FindNext() Loop While Not c Is Nothing End If End With
Bonjour,
Merci de ta réactivité.
J'ai testé ton code mais rien ne se passe.
Au passage, mon fichier peut contenir plus de 500 lignes (ce n'est pas le cas aujourd'hui)
Est-ce que c'est pas le nom de la feuille que je dois changer ? (oui, je n'y connais vriament rien !)
Merci de ta réactivité.
J'ai testé ton code mais rien ne se passe.
Au passage, mon fichier peut contenir plus de 500 lignes (ce n'est pas le cas aujourd'hui)
Est-ce que c'est pas le nom de la feuille que je dois changer ? (oui, je n'y connais vriament rien !)
ShaBoo
Messages postés
392
Date d'inscription
mercredi 12 septembre 2007
Statut
Membre
Dernière intervention
5 septembre 2009
50
12 nov. 2007 à 12:04
12 nov. 2007 à 12:04
Met ton code ici, stp
Bonjour,
Rien de plus que ce que tu as suggéré. J'ai mis 600 car j'ai 510 lignes..
Sub deleteligneaffecte()
'
With Worksheets(1).Range("A1:A600")
Set c = .Find("affecté", LookIn:=xlValues)
If Not c Is Nothing Then
Do
Debug.Print c.Address
Set c = .FindNext()
Loop While Not c Is Nothing
End If
End With
End Sub
Rien de plus que ce que tu as suggéré. J'ai mis 600 car j'ai 510 lignes..
Sub deleteligneaffecte()
'
With Worksheets(1).Range("A1:A600")
Set c = .Find("affecté", LookIn:=xlValues)
If Not c Is Nothing Then
Do
Debug.Print c.Address
Set c = .FindNext()
Loop While Not c Is Nothing
End If
End With
End Sub
ShaBoo
Messages postés
392
Date d'inscription
mercredi 12 septembre 2007
Statut
Membre
Dernière intervention
5 septembre 2009
50
12 nov. 2007 à 13:00
12 nov. 2007 à 13:00
et qu'est ce qui ne fonctionne pas ???
ShaBoo
Messages postés
392
Date d'inscription
mercredi 12 septembre 2007
Statut
Membre
Dernière intervention
5 septembre 2009
50
12 nov. 2007 à 13:24
12 nov. 2007 à 13:24
oupssss ...
Autant pour moi. Comme quoi de la necessité de tester ;p
Ceci fonctionne mieux comme cela :
Autant pour moi. Comme quoi de la necessité de tester ;p
Ceci fonctionne mieux comme cela :
Sub deleteligneaffecte() ' With Worksheets(1).Range("A1:A600") Set c = .Find("affecté", LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do 'Debug.Print c.Address Debug.Print c.Row 'affiche le numero de ligne Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With End Sub
Bonjour,
j'ai l'impression que rien ne se passe lorsque j'execute la macro. (et la ligne en question n'est pas supprimée)
j'ai l'impression que rien ne se passe lorsque j'execute la macro. (et la ligne en question n'est pas supprimée)
ShaBoo
Messages postés
392
Date d'inscription
mercredi 12 septembre 2007
Statut
Membre
Dernière intervention
5 septembre 2009
50
12 nov. 2007 à 14:05
12 nov. 2007 à 14:05
Tu as raison. La méthode avec .FindNext ne fonctionnera pas.
Je te renvoie sur ici :
Excel - VBA Problème de suppression de lignes...
et ici :
VBA Excel et suppression de lignes
ou plusieurs méthodes sont utilisés.
N'hésites pas en cas de problème ...
Je te renvoie sur ici :
Excel - VBA Problème de suppression de lignes...
et ici :
VBA Excel et suppression de lignes
ou plusieurs méthodes sont utilisés.
N'hésites pas en cas de problème ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question