Supprimer des lignes excel

  • Initiateur de la discussion Initiateur de la discussion eillon
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

eillon

Guest
Bonjour à tous,

Je voudrais savoir comment est-ce que je peux supprimer des lignes excel ne contenant pas le mot "arrivée".

Pour information, je récupère des données avec une centaine de lignes et je ne veux conserver uniquement celles qui ont le mot arrivée.

Exemple:

15:50 396,9 Prendre Place de l'Église Saint-Martin à DROITE (est) 70 m
15:51 397 Tourner à DROITE (est), prendre D28 [Rue des Trois Êvéchés] 0,7 km
15:52 397,7 Continuer TOUT DROIT sur D28 1,6 km
15:54 399,3 Tourner à GAUCHE (nord), prendre les routes locales 1,2 km
15:55 400,5 Tourner à GAUCHE (ouest), prendre les routes locales 0,1 km
15:55 400,6 Arrivée 223989 LAVE-VAISSELLE 12 COUVERTS MIELE G1230SC INOX [La draperie, 35850 langan]
16:05 400,6 Départ de 223989 LAVE-VAISSELLE 12 COUVERTS MIELE G1230SC INOX [La draperie, 35850 langan] sur les routes locales (est) 0,1 km
16:06 400,8 Tourner à GAUCHE (nord), prendre les routes locales 1,6 km
16:07 402,3 Tourner à DROITE (est), prendre D25 1,0 km
16:09 403,3 Tourner à GAUCHE (nord-ouest), prendre D80 [Rue de la Chapelle-Chaussée] 0,1 km
16:09 403,4 Tourner à DROITE (nord), prendre D80 2,6 km
16:11 406 Prendre D80 [Rue de la Croisade] à GAUCHE (nord-est) 0,4 km
16:12 406,4 Prendre D80 [Rue de Couësbouc] à GAUCHE (nord-est) 0,4 km
16:12 406,8 Continuer TOUT DROIT sur D80 1,8 km
16:13 408,5 Tourner à GAUCHE (nord-ouest), prendre les routes locales 40 m
16:14 408,6 Arrivée 235389 LAVE-VAISSELLE 12 COUVERTS WHIRLPOOL ADP6946IX [22 Allèe du Champ Briant d'Ahaut, 35630 VIGNOC]
16:24 408,6 Départ de 235389 LAVE-VAISSELLE 12 COUVERTS WHIRLPOOL ADP6946IX [22 Allèe du Champ Briant d'Ahaut, 35630 VIGNOC] sur les routes locales (sud-est) 40 m
16:24 408,6 Tourner à GAUCHE (nord-est), prendre D80 1,3 km

Les lignes C avec "arrivée" (en gras) doivent resté apparentent même mieux, j'aimerais garder juste les heures en colonnes A correspondant aux lignes avec Arrivée.

Je ne sais pas si je suis bien clair ...

Sur l'exemple que j'ai mis au dessus, il faudrait qu'il me garde les heures suivantes 15h55 et 16h14.

Merci à tous
 
Re : Supprimer des lignes excel

Re

j'ai repris le fichier FICHIER

mais , en l'etat il est inexploitable
d'autant que je n'y vois pas d' "arrivée" ni d'heures , que je ne sais pas sur quelle feuille il faut considerer la colonne B et que j'ignore ce que tu entends par isoler
 
Re : Supprimer des lignes excel

pardon, je n'avais pas vu qu'il y avait une deuxième page donc je croyais que personne n'avais répondu...
Je met un fichier exemple.

Comme au début, je veux récupérer les heures qui correspondent à "arrivée" (voir macro) et je souhaiterai pousser un peu plus loin en conservant le numéro à 6 chiffres après arrivée.

Pour être plus clair, le résultat souhaité est sur le classeur test en feuille 2.

J'ai surligné en jaune les lignes qui m'intéressent, la macro existante fonctionne très bien, je veux juste la compléter.

Je n'ai pas enregistrer la macro.
Code:
Sub recup_heures()

Application.ScreenUpdating = False
For n = Sheets("recup heures").Range("C65536").End(xlUp).Row To 1 Step -1
 If InStr(Sheets("recup heures").Range("C" & n), "Arrivée") = 0 Then
 Sheets("recup heures").Rows(n).Delete
 Sheets("recup heures").Range("B" & n & ":C" & n).ClearContents
 End If
Next n
Application.ScreenUpdating = True
Range("A1").CurrentRegion.Select
Selection.Copy

End Sub
 

Pièces jointes

Dernière modification par un modérateur:
Re : Supprimer des lignes excel

Re

A tester:

Code:
Sub recup_heures()
Application.ScreenUpdating = False
For n = Sheets("recup heures").Range("C65536").End(xlUp).Row To 1 Step -1
 If InStr(Sheets("recup heures").Range("C" & n), "Arrivée") = 0 Then
 Sheets("recup heures").Rows(n).Delete
 Else
 Sheets("recup heures").Range("C" & n) = Left(Range("C" & n), 14)
 End If
Next n
Application.ScreenUpdating = True
[COLOR=blue]Range("A1").CurrentRegion.Select
Selection.Copy
[/COLOR]End Sub
 
Note: J'ai laissé les 2 dernieres lignes mais je n'en vois pas l'utilité
 
Re : Supprimer des lignes excel

J'ai fait avec ça, mais je pense qu'on peut faire plus simple..

Code:
Sub recup_heures()
Application.ScreenUpdating = False
For n = Sheets("recup heures").Range("C65536").End(xlUp).Row To 1 Step -1
 If InStr(Sheets("recup heures").Range("C" & n), "Arrivée") = 0 Then
 Sheets("recup heures").Rows(n).Delete
 Sheets("recup heures").Columns("B:B").ClearContents
 Else
 Sheets("recup heures").Range("C" & n) = Left(Range("C" & n), 14)
 Sheets("recup heures").Range("C" & n) = Right(Range("C" & n), 6)
 End If
Next n
Application.ScreenUpdating = True
Range("A1").CurrentRegion.Select
Selection.Copy
End Sub
 
Re : Supprimer des lignes excel

Re

Pas bien meilleur !

Code:
Sub recup_heures()
Application.ScreenUpdating = False
For n = Sheets("recup heures").Range("C65536").End(xlUp).Row To 1 Step -1
 If InStr(Sheets("recup heures").Range("C" & n), "Arrivée") = 0 Then
 Sheets("recup heures").Rows(n).Delete
 Else
 Sheets("recup heures").Range("B" & n) = Mid(Range("C" & n), 9, 6)
 Sheets("recup heures").Range("C" & n) = ""
 End If
Next n
Application.ScreenUpdating = True
Range("A1").CurrentRegion.Select
Selection.Copy
End Sub
 
Re : Supprimer des lignes excel

J'ai trouvé mon bonheur

Je fini en sélection B:B, même si j'aurais préférer avoir plage B avec des données, j'ai essayer ça mais il me sélectionne que B1

Code:
Range("B1", range("B1").end(xlup)).select

Je pensais qu'il me prendrais la première cellule pleine de B et la dernière

Code:
Sub recup_heures()

Application.ScreenUpdating = False

For n = Sheets("recup heures").Range("C65536").End(xlUp).Row To 1 Step -1
 If InStr(Sheets("recup heures").Range("C" & n), "Arrivée") = 0 Then
 Sheets("recup heures").Rows(n).Delete
 Else
 Sheets("recup heures").Range("B" & n) = Mid(Range("C" & n), 9, 6)
 Sheets("recup heures").Range("C" & n) = ""
 End If
Next n

Range("B1").End(xlDown).Delete
Range("B:B").Select
Selection.Copy

Application.ScreenUpdating = True

End Sub

Merci pour ton aide, je gagne encore 3 min.
 
Re : Supprimer des lignes excel

C bon j'ai trouvé, si je lui fais chercher vers le haut en partant de B1, il ne trouvera que B1...😀

Code:
Range("B1", Range("B1").End(xlDown)).Select

C'est mieux comme ça 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour