Suppromer des lignes

  • Initiateur de la discussion Initiateur de la discussion Yves
  • 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 !

Y

Yves

Guest
Bonjour,

Je me sert de Excel pour faire des rapports, une fois le travail terminé j'aimrais faire une macro qui va permettre d'effacer tous les lignes qui ne son pas utilisées.

Par exemple :

Plancher : En moquette.
Mur : En Gypse.
Plafond : En tuile acoustique.
Porte :
Fenêtres : En verre thermal.

Donc, comme il n'y a pas de porte j'aimerai effacer la ligne. J'ai fait une macro, mais quand il n'y a plus rien à chercher, il y a un message d'erreur.

La voici quand même :


Sub YASvide()
'
' YASvide Macro
' Macro recorded 2004-10-03 by YASéguin
'
'

Dim i, z As Integer
z = 2000

For i = 1 To z

If i = z = False Then

Range("C1").Select
Cells.Find(What:="YASvide", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Range(Selection, Cells(ActiveCell.Row, 1)).Select
Selection.EntireRow.Delete

End If
Next i
MsgBox "Opération de Nettoyage" & vbLf & "Terminée", vbOKOnly, "YAS conmmande"

End Sub


Merci à l'avance.
 
Salut Chtil60 et Yves

Est-ce "normal" qu'il faille relancer polusieurs fois la macro pour que le ménage soit fait entièrement ?

Boudiou non bien sûr vous allez me répondre mais encore .....


@+
GD
 
Re à tous
ou alors on fait pas dans le détail
Sub SupLigne()
Dim L As Integer
L = Sheets("Feuil1").Range("A65536").End(xlUp).Row
Sheets("Feuil1").Range("B2:B" & L).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
A+++
Jean Marie
 
re "Yves"
donc tu peux utiliser la macro LigneVideV2.zip
Sub SupLigne()
Dim cel As Range
Dim L As Integer
Dim Lgn As Integer
Application.ScreenUpdating = False
On Error Resume Next
With Worksheets("Feuil1")'nom de la feuille "Feuil1"
Lgn = .Range("A65536").End(xlUp).Row'on recherche là la dernier ligne de la colonne A
End With
For L = Lgn To 2 Step -1
If Cells(L, 1).Offset(0, 1).Value = "" Then 'Ici on test si la cellule de la colonne B est vide
Cells(L, 1).EntireRow.Delete'ici on supprime la ligne|/i]
End If
Next
Application.ScreenUpdating = True
End Sub
A+++
Jean Marie
 
C'est super !! Un gros merci 🙂

En passant, une fois que ce rapport est terminé je le passe dans Word pour faire une belle présentation, dans un avenir rapproché je ne veux plus passer par Word. Mais Excel ne fait pas de table de matière pour la page, et c'est frustrant.

EX :

Entrée

Salon

Cusine

Sous-sol

J'aimerais faire une table des matières avec les pages comme dans Word, mais attention le tout en dynamique, ca peut changer en tous temps.

S'il n'y a pas de solution, peut-on au moins donner un style de type TCO1 et TCO2 à excel et quant je le trasfert à Word par Copy-Pass, il va le reconnaitre et me créer la table des matières ???

Merci.
 
- 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.

Discussions similaires

Retour