IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Suppression de lignes


Sujet :

Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2012
    Messages : 133
    Points : 18
    Points
    18
    Par défaut Suppression de lignes
    Bonjour à tous
    j'ai un document qui comporte des données qui sont espacés càd ce qui les a saisi il a rempli une ligne et sauté la suivante.
    Y a t-il une astuce qui me permet de supprimer les lignes sautées en une seule fois au lieu de les effacer une à une
    Merci d'avance pour toute réponse

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,
    avec Vba, ce code exécuté dans un module :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Sub suplignes()
    Dim Dl As Long, Dc As Long, x As Long, y As Long, verif As String
    verif = ""
    With Sheets("Feuil1") '"Feuil1" à remplacer par le nom de ta feuille
      Dl = .Range("A" & .Rows.Count).End(xlUp).Row 'dernière ligne utilisée en A
      Dc = .Cells(1, .Columns.Count).End(xlToLeft).Column 'dernière colonne utilisée sur la ligne 1
      For x = Dl To 1 Step -1 'tu remontes de la dernière ligne à la première pour vérifier si vide
        For y = 1 To Dc
          verif = verif & .Cells(x, y)
        Next y
        If verif = "" Then
          .Rows(x).Delete
        End If
        verif = ""
      Next x
    End With
    End Sub
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 820
    Points : 28 725
    Points
    28 725
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Une autre solution avec la méthode SpecialCells (similaire à l'action manuelle de l'outil Atteindre option Cellules vides).
    Exemple pour une liste de données débutant en A1 et dont on supprime les lignes dont les cellules de la première colonne sont vides.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub DeleteRowsEmpty()
      Dim sht As Worksheet, rng As Range
      Set sht = ThisWorkbook.Worksheets("Feuil1")
      With sht
       Set rng = .Range(.Range("A1"), .Range("A" & .Rows.Count).End(xlUp))
      End With
      rng.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Bonjour,

    Tu n'en as sans doute plus besoin, mais bon... En admettant que les lignes remplies aient quelque chose en colonne A, mais cette formule en ligne 1 d'une colonne inutilisée :
    et recopie vers le bas.
    et trie les données, cette colonne incluse.
    Efface la colonne. C'est tout.
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

Discussions similaires

  1. [Excel - VBA] Problème de suppression de lignes...
    Par beholder2 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 28/01/2005, 17h27
  2. Suppression de lignes dans un fichier
    Par bubu dans le forum Linux
    Réponses: 2
    Dernier message: 13/01/2005, 10h36
  3. Dbgrid : Comment interdire Suppression de Ligne
    Par Francis dans le forum Bases de données
    Réponses: 3
    Dernier message: 28/11/2004, 08h31
  4. Réponses: 4
    Dernier message: 02/07/2004, 19h14
  5. [VB.NET] Suppression de ligne dans un DataTable
    Par seemax dans le forum Windows Forms
    Réponses: 7
    Dernier message: 06/05/2004, 14h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo