[VBA Excel] Suppression ligne inférieures
Résolu/Fermé
Gorion87
Messages postés
55
Date d'inscription
vendredi 20 février 2009
Statut
Membre
Dernière intervention
28 février 2011
-
20 févr. 2009 à 16:34
Gorion87 Messages postés 55 Date d'inscription vendredi 20 février 2009 Statut Membre Dernière intervention 28 février 2011 - 21 févr. 2009 à 12:22
Gorion87 Messages postés 55 Date d'inscription vendredi 20 février 2009 Statut Membre Dernière intervention 28 février 2011 - 21 févr. 2009 à 12:22
Bonjour,
Je n'arrive pas à trouver le moyen de supprimer les 6 lignes suivantes quand la macro trouve la valeur "*Data*" dans une cellule. La ligne contenant "*Data*" se supprime bien mais je voudrais que les 6 suivantes se suppriment, ainsi que celle d'au-dessus, automatiquement.
Voici le code VBA :
For X = 2 To Range("A65536").End(xlUp).Row
If Range("A" & X) = "*Data*" Then Rows(X).Delete
Next X
Merci pour votre aide d'avance.
Je n'arrive pas à trouver le moyen de supprimer les 6 lignes suivantes quand la macro trouve la valeur "*Data*" dans une cellule. La ligne contenant "*Data*" se supprime bien mais je voudrais que les 6 suivantes se suppriment, ainsi que celle d'au-dessus, automatiquement.
Voici le code VBA :
For X = 2 To Range("A65536").End(xlUp).Row
If Range("A" & X) = "*Data*" Then Rows(X).Delete
Next X
Merci pour votre aide d'avance.
A voir également:
- [VBA Excel] Suppression ligne inférieures
- Aller à la ligne excel - Guide
- Forcer suppression fichier - Guide
- Liste déroulante excel - Guide
- Partager photos en ligne - Guide
- Word et excel gratuit - Guide
3 réponses
PGZ
Messages postés
11
Date d'inscription
dimanche 23 novembre 2008
Statut
Membre
Dernière intervention
26 février 2009
5
20 févr. 2009 à 20:22
20 févr. 2009 à 20:22
Bonsoir,
Je te suggère ceci :
*********************************************************
Dim sh As Excel.Worksheet, x As Long, i As Integer
Set sh = Application.ThisWorkbook.Worksheets("NomFeuille")
For x = sh.Range("A" & Application.Rows.Count).End(xlUp).Row To 2 Step -1
If sh.Range("A" & x).Value Like "*Data*" Then
For i = 1 To 7
sh.Rows(x).Delete
Next i
End If
Next x
Set sh = Nothing
End Sub
************************************************************
Cordialement,
PGZ
Je te suggère ceci :
*********************************************************
Dim sh As Excel.Worksheet, x As Long, i As Integer
Set sh = Application.ThisWorkbook.Worksheets("NomFeuille")
For x = sh.Range("A" & Application.Rows.Count).End(xlUp).Row To 2 Step -1
If sh.Range("A" & x).Value Like "*Data*" Then
For i = 1 To 7
sh.Rows(x).Delete
Next i
End If
Next x
Set sh = Nothing
End Sub
************************************************************
Cordialement,
PGZ
Gorion87
Messages postés
55
Date d'inscription
vendredi 20 février 2009
Statut
Membre
Dernière intervention
28 février 2011
19
21 févr. 2009 à 11:51
21 févr. 2009 à 11:51
Bonjour,
Un grand merci pour votre aide. Ca marche impeccable !!!
Cependant il me manque juste une requête pour que ce soit parfait.
Il faudrait que la ligne au-dessus de la valeur trouvée se supprime également, ce qui n'est pas le cas pour le moment.
Merci encore !!!
Un grand merci pour votre aide. Ca marche impeccable !!!
Cependant il me manque juste une requête pour que ce soit parfait.
Il faudrait que la ligne au-dessus de la valeur trouvée se supprime également, ce qui n'est pas le cas pour le moment.
Merci encore !!!
Gorion87
Messages postés
55
Date d'inscription
vendredi 20 février 2009
Statut
Membre
Dernière intervention
28 février 2011
19
21 févr. 2009 à 12:22
21 févr. 2009 à 12:22
Re bonjour,
C'est bon j'ai réussit à trouver en cherchant un peu et en bidouillant :-)
Voici ce que celà donne :
Dim sh As Excel.Worksheet, x As Long, i As Integer
Set sh = Application.ThisWorkbook.Worksheets("Test")
For x = sh.Range("A" & Application.Rows.Count).End(xlUp).Row To 2 Step -1
If sh.Range("A" & x).Value Like "*Data*" Then
For i = 1 To 7
sh.Rows(x - 1).Delete
Next i
End If
Next x
Set sh = Nothing
End Sub
Merci encore pour votre aide, j'ai franchit une nouvelle étape dans la compréhension des macros grâce à vous !!!!
C'est bon j'ai réussit à trouver en cherchant un peu et en bidouillant :-)
Voici ce que celà donne :
Dim sh As Excel.Worksheet, x As Long, i As Integer
Set sh = Application.ThisWorkbook.Worksheets("Test")
For x = sh.Range("A" & Application.Rows.Count).End(xlUp).Row To 2 Step -1
If sh.Range("A" & x).Value Like "*Data*" Then
For i = 1 To 7
sh.Rows(x - 1).Delete
Next i
End If
Next x
Set sh = Nothing
End Sub
Merci encore pour votre aide, j'ai franchit une nouvelle étape dans la compréhension des macros grâce à vous !!!!