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

Macros et VBA Excel Discussion :

Suppression de lignes dont la valeur d'une colonne est particulière


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 619
    Par défaut Suppression de lignes dont la valeur d'une colonne est particulière
    Je cherche à supprimer toutes les lignes d'un tableau dont la valeur d'une colonne est égale à 0.

    Pour cela, je me suis placé sur la colonne dont la valeur détermine si il faut supprimer la ligne et j'ai parcouru toute les lignes et je les ai éventuellement supprimées.

    N'y a t-il pas un moyen plus rapide :
    -en sélectionnant tout le tableau par instruction (équivalent d'un CTRL + Maj + Fin)
    - en supprimant les lignes du tableau dont la valeur est 0 ?

    Je ne sais pas coder ces actions.

    Merci d'avance.

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonsoir,
    sur la colonne B (par exemple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Test()
    Dim LastLig As long, i As long 
    LastLig = Cells(Rows.Count, 2).End(xlUp).Row
     
    For i = LastLig To 2 Step -1
        If Cells(i, 2) = 0 Then Rows(i).Delete
    Next i
    End Sub

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 619
    Par défaut
    Je te remercie bien mais cela correspond plus ou moins à ce que j'ai fait.

    Je :
    - me suis placé sur la cellule C2
    - j'ai fait une boucle jusqu'à valeur cellule = ""
    - si valeur cellule = "0" alors je supprime la ligne,
    - je descend d'une ligne.

    En fait je me demande si il n'y a pas un autre moyen. Un peu comme si je pouvais sélectionner l'ensemble du tableau et supprimer certaines lignes par une méthode^.

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Combien tu as de données?
    autre proposition, tu peux
    créer un filtre
    supprimer les lignes
    supprimer le filtre

  5. #5
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 619
    Par défaut
    J'en ai assez peu, c'est surtout pour apprendre un moyen efficace.

    Comment faire concrétement si je créé un filtre ?

    Je peux me positionner sur la cellule C2 et descendre, vais-je ne lire que les cellules visibles ? C'est vrai que je pourrai essayer avec ma macro (elle est au boulot et je n'y vais pas avant quelques jours ...).

Discussions similaires

  1. Réponses: 0
    Dernier message: 10/10/2013, 13h29
  2. Réponses: 4
    Dernier message: 24/01/2013, 15h57
  3. Réponses: 2
    Dernier message: 24/10/2008, 09h04
  4. Réponses: 5
    Dernier message: 15/02/2008, 12h28
  5. [SQL] ligne dont la valeur d'un champ est unique
    Par kopofb dans le forum Langage SQL
    Réponses: 2
    Dernier message: 10/11/2005, 21h53

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