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 :

supprimer une ligne dans une plage specifique [XL-2003]


Sujet :

Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 28
    Points : 29
    Points
    29
    Par défaut supprimer une ligne dans une plage specifique
    Bonjour,

    Je cherche a creer un programme qui copie des donnees dans une feuille globale. Cependant il y a certaine lignes qui ne m interesse pas a savoir celles dont la cellule de la colonne A est vide. J aimerais ainsi supprimer ces lignes si ces conditions sont remplies.

    Merci pour votre aide


    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Sub DatenSammeln()
     
        Dim Sht As Worksheet
        Dim Plage As Range
        Dim Zeile_Leer As Range
     
      For Each Sht In ThisWorkbook.Worksheets
     
            If Sht.Name = "X" Or Sht.Name = "Y" Or Sht.Name "Z" Then
     
                With Sht
     
                  Set Plage = .Range(.Cells(2, 1), _
                                .Cells( _
                                .Cells.Find("*", .[A1], -4123, , _
                                1, 2).Row, _
                                .Cells.Find("*", .[A1], -4123, , _
                                2, 2).Column))
     
     
     
                End With
     
     
            Plage.Copy
            Worksheets("Basis").Select
                Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
     
     
                    For Each Zeile_Leer In worksheets("Basis").columns("A")
                        If Zeile_Leer.Value = "" Then
                        Zeile_Leer.EntireRow.delete
     
                    End If
                    Next Zeile_Leer
     
            End If
     
        Next Sht
     
    End Sub

  2. #2
    Membre éclairé
    Avatar de bifconsult
    Homme Profil pro
    Consultant
    Inscrit en
    Mars 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 189
    Points : 877
    Points
    877
    Par défaut
    Re, ...

    Pour supprimer les lignes, l'idéal est de parcourir la table de bas en haut.

    Voici un code simple qui supprimera toutes les lignes pour lesquelles la valeur en colonne "A" est "" (rien).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Last_row = Cells(Cells.Rows.Count, 1).End(xlUp).Row 
    'Last_row = dernière ligne de la colonne A
    For I = Last_row to 1 step-1
         if cells(I,1).value="" then rows(I).delete shift:=xlup
    next I

  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 928
    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 928
    Points : 28 922
    Points
    28 922
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Tu es certain d'avoir exécuter au moins UNE fois le code que tu nous présentes, voir même de l'avoir placé dans un module ?
    Parce-que, je ne vois pas comment cette ligne de code fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Sht.Name = "X" Or Sht.Name = "Y" Or Sht.Name "Z" Then
    Même à l'encodage, tu aurais dû voir qu'il y avait une erreur de syntaxe.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 28
    Points : 29
    Points
    29
    Par défaut
    Merci beaucoup ca fonctionne!

    Oui le code tourne correctement, en tout cas aucune faute de syntaxe n est affiche.

  5. #5
    Membre éclairé
    Avatar de bifconsult
    Homme Profil pro
    Consultant
    Inscrit en
    Mars 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 189
    Points : 877
    Points
    877
    Par défaut
    Corona a parfaitement raison...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Sht.Name = "X" Or Sht.Name = "Y" Or Sht.Name "Z" Then
    ne peut pas fonctionner. Il manque un "=" avant le "Z" !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  2. Supprimer les lignes d'une table dans une autre table
    Par blastmind dans le forum SAS Base
    Réponses: 2
    Dernier message: 28/04/2009, 14h17
  3. [E-00] Syntaxe pour insérer une ligne ou une colonne dans une feuille
    Par Benjycool dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/02/2009, 09h27
  4. [MySQL] inserer une ligne d'une table dans une autre table
    Par piero53 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 14/12/2008, 18h29
  5. Réponses: 3
    Dernier message: 29/01/2008, 12h08

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