supprimer les lignes des cellules sélectionnées

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 !

sourcier08

XLDnaute Occasionnel
Bonjour, j'ai fait un fichier avec une plage allant de "A6" à "A8".
Chaque fois que j'insère une ligne, c'est en "A7".

J'aimerai pouvoir supprimer les lignes lorsque je veux remettre à zéro ce tableau.

J'ai donc écris une macro pouvant sélectionner toutes les cellules non-vide de cette plage et je n'arrive pas à trouver comment supprimer les lignes des cellules sélectionnées.

Code:
Sub SelectionNonVides()
  'sélectionner 1ere cellule non vide
  For Each c In Range("plage")
    If c <> "" Then
      c.Select
      Exit For
    End If
  Next

  ' extension sélection
  For Each c In Range("plage")
    If c <> "" Then
      Range(Selection.Address, c.Address).Select
    End If
  Next
  
End Sub

Sub supprimer()
      ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End Sub

Merci d'avance pour l'aide apportée.
 
Dernière édition:
Re : supprimer les lignes des cellules sélectionnées

Bonjour

Essaie donc avec ça (remplace tout ton code):

Code:
Range("plage").SpecialCells(xlCellTypeBlanks).EntireRow.Delete

Je pense que ton problème vient du fait que tu actives les lignes concernées mais que supprime les lignes sélectionnées (sans certitudes, il faudrait un fichier pour faire des essais).
 
Re : supprimer les lignes des cellules sélectionnées

Si ça fonctionne mais ton programme ne l'appelle pas (il faut que tu mettes "supprimer" à l'endroit ou tu veux que ton code lance la suppression).

Tu n'as qu'à faire onglet développeur, macros, "supprimer", exécuter et ça va supprimer les lignes 6 et 10 de ton exemple.
(d'ailleurs après test, cela entraîne une erreur quand il n'y a pas de lignes vides, ajoute donc "on error resume next" dans la ligne au dessus de celle que je t'ai donné)
 
Re : supprimer les lignes des cellules sélectionnées

J'ai réussi en créant une boucle qui répète la recherche et la suppression de la ligne de la première cellule renseignée de ma plage.

Code:
Sub supprimer()

Application.ScreenUpdating = False

    For i = 1 To 200
    'sélectionner 1ere cellule non vide
        For Each c In Range("plage")
            If c <> "" Then
                c.Select
      
    'supprimer la ligne de la cellule active
                ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
            Exit For
        End If
    Next

Next

Application.ScreenUpdating = True

End Sub

Un bouton pour supprimer les lignes et hop, feuille remise à neuf l'année prochaine.

Je te remercie quand-même pour ton aide.
@+
 

Pièces jointes

Dernière édition:
Re : supprimer les lignes des cellules sélectionnées

Mal réveillé, j'avais compris que tu voulais supprimer les lignes vides (et non les non vides 🙄).

Inutile de rechercher les cellules vides, supprime le bloc:
Code:
Range("6:60000").Delete
 
- 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

Discussions similaires

Réponses
7
Affichages
211
Réponses
2
Affichages
201
Réponses
5
Affichages
235
Retour