Suppression de ligne jusqu'a 1

Résolu
Artkloup Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
Artkloup Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Auriez vous un programme pour supprimer des lignes vides jusqu'au chiffre 1 ?
Merci
Pascal
A voir également:

3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour ( si si ... on commence par ça !!!! )

jusqu'au chiffre 1

C'est à dire ???
- La ligne 1 ?
- La cellule d'une colonne (on ne sait pas laquelle...) contient le chiffre 1 ??
- Je compte dans ma tête jusqu'au chiffre 1 ? :-)

Pour ce qui est de la macro de suppression de lignes ... il te suffit de faire une boucle (en partant du bas de ton tableau et en remontant (avec step -1 ) .. de regarder le contenu de tes cellules... et si elle sont vides .. de faire un DELETE sur la ligne.)

Quoi qu'il en soit.. sans avoir plus d'informations sur la structure de ton fichier... ni savoir sur quelle(s) cellule(s) tu veux vérifier si elle est vide ou non pour la suppression.. impossible de t'en dire plus.

Et à la limite.. tu peux même uploader un fichier excel sur le site www.cijoint.com pour illustrer ta demande.

=> https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers


0
Artkloup Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Excuse pour ce manque d'info.
A la fin de la colonne A, il ce trouve le chiffre 1.
Une sorte de repère. Tu vois ce que veux dire.
0
Artkloup Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
- La cellule d'une colonne (A) contient le chiffre 1
0
Artkloup Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Sub ligneide()
'
' ligneide Macro
'
Sub EnleverLignesVides()
Dim p As Range, i As Long
Set p = Application.InputBox(Prompt:="Sélectionnez une plage", _
Title:=" Supprimer lignes vides", Type:=8)
With p
For i = .Rows.Count To 1 Step -1
If Application.CountA(.Rows(i)) = 0 Then _
.Rows(i).EntireRow.Delete 'ICI
Next i
End With
End Sub


j'ai trouve cette formule mais elle me demande une choisir une plage de cellule delete.
y a t'il possible d'enserrer de ce repérer a la colonne A jusqu'à trouver 1

Je te remercie de ton aide.
Pascal
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour aussi

pas besoin de boucle !

Sub virerligvide()
Dim Derlig As Long

Derlig = Columns("A").Find(1, , , , , xlPrevious).Row
If Application.CountIf(Range("A1:A" & Derlig), "") > 0 Then
Range("A1:A" & Derlig).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End If
End Sub

On considère qu'il n'y a qu'un seul "1"; S'il y en a >1, on prend le dernier
Autrement, fais signe
0
Artkloup Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Bien le bonjour,
j'ai fait des essais.
ça marche.
Merci bcp, super.
Pascal
0