Supprimer des lignes répétitives

Bonjour,

Je sollicite de l’aide. J’ai un fichier qui comprend de nombreuses erreurs. Le fichier fait plus de 5000 lignes !

Je commence par la 1ère erreur :

Le fichier comprend plusieurs lignes vides ou contenant des données qui ne m’intéressent pas. En étudiant le fichier, je constate que chaque fois qu’une ligne contient le mot « Remise », cette ligne et les trois suivantes sont à supprimer.

(On peut constater que parfois Remise est précédée par 4 espaces et parfois par un espace)

La page se présente ainsi :

A1 Mardi 20/06/2017

A2 Salle 1 (salle partagée)

A3 07:45 BROSSEAU

A4 Remise en condition salle

A5

A6

A7

A8 Remise en condition salle

A9

A10

A11

A12 Remise en condition salle

A13 Saisie le par

A14

A15

A16 Salle 2 (salle partagée)

A17 08:41 BIRONNEAU

A18 Remise en condition salle

A19

A20

A21

A22 Remise en condition salle

A23

A24

A25

A26 Remise en condition salle

A27 Saisie le par

A28

A29

A30 10:10

A31 Remise en condition salle

A32

A33

A34

A35 Remise en condition salle

A36

A37

A38

A39 Remise en condition salle

A40 Saisie le par

A41

A42

A43 Salle 3 (salle partagée)

En cherchant sur le site, j’ai pu trouver une macro qui élimine toutes les lignes contenant le mot « Remise » :

Sub Macro1()

Dim Cel As Range

Do

Set Cel = Cells.Find(What:="Remise", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, _

SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True, SearchFormat:=False)

If Cel Is Nothing Then

Exit Do

Else

Rows(Cel.Row).Delete

End If

Loop

End Sub

Cette Macro est parfaite pour supprimer les lignes contenant le mot désiré, ici Remise

Ma question est : comment la modifier pour qu’elle supprime également les 3 lignes qui suivent ?

Vous remerciant de votre aide

Bonjour HABD, bonjour le forum,

Porte attention pour mettre ton code sous balise (bouton Code).

Un suggestion à tester.

Sub Macro1()
Dim Cel As Range

Do
Set Cel = Cells.Find(What:="Remise", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True, SearchFormat:=False)
If Cel Is Nothing Then
    Exit Do
Else
    Range("A" & Cel.Row & ":A" & Cel.Row + 3).EntireRow.Delete
End If
Loop
End Sub

Joseph

Bonsoir,

Excellent. Le code marche parfaitement. Je vais pouvoir continuer à trier mes lignes. Merci infiniment!

HABD

Rechercher des sujets similaires à "supprimer lignes repetitives"