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 :

Création Macro pour supprimer des lignes après tests conditionnels


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 55
    Par défaut Création Macro pour supprimer des lignes après tests conditionnels
    Bonjour à tous,

    Pour faire simple, j'ai une base de données avec du texte en colonne B et une quantité en I/J (cellule fusionnée) + des lignes vierges de tps en tps

    Je cherche à créer une macro qui supprime certaines lignes dans mon fichier, sous les 2 conditions suivantes :
    - la ligne contient du texte en B
    - la ligne contient la valeur 0 en I/J

    C'est une macro simple, mais je ne connais plus mes codes VBA . Ca fait bien trop lgtps que je n'ai plus pratiqué.

    Merci bcp pour votre aide!

  2. #2
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    bonjour,
    un exemple. On parcours de la derniere ligne jusqu' à la ligne 2.
    Si il y a quelque chose en B et 0 en I alors on suuprime la ligne entière:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    derniereligne = Range("A1").SpecialCells(xlCellTypeLastCell).Row
    For i = derniereligne To 2 Step -1
    If Range("B" & i).Value <> "" And Range("I" & i).Value = "0" Then Rows(i).EntireRow.Delete
    Next i

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 55
    Par défaut
    Merci de ta réponse rvtoulon!

    Pour que ta macro marche, il faut que je définisse les variables avant
    notamment i et derniereligne

    Si tu pouvais m'indiquer le code à utiliser pour cela, ca serait super!

    Merci d'avance

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonsoir,
    Puisque tu travaille entre autres sur la colonnes B tu peu faire cela (en partant du code d'Hervé) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    For i = [B65536].End(xlUp).Row To 2 Step -1
    If Range("B" & i).Value <> "" And _
       Range("I" & i).Value = "0" Then Rows(i).EntireRow.Delete
    Next i
    Hervé

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 55
    Par défaut
    Merci de ta réponse Hervé.
    Mais j'ai toujours le problème de la définition de variable.
    Si tu pouvais m'indiquer la première ligne du code à saisir pour définir la variable

    Thank in advance!

  6. #6
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Bonjour,
    en début de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    sub Tamacro ()
    Dim derniereligne as Integer
    Dim i as integer

Discussions similaires

  1. [XL-2013] Macro pour supprimer des lignes suivant des critères données
    Par Malick dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/07/2014, 14h35
  2. Une macro pour supprimer des lignes dans un message
    Par blade2a dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 26/06/2012, 01h26
  3. [XL-2007] Macro pour supprimer des lignes sous conditions de valeur de cellule
    Par frisco75 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 09/09/2011, 14h33
  4. macro excel pour supprimer des lignes comportant un caractere spécial
    Par fredo49 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/04/2011, 16h32
  5. Shell pour supprimer des lignes d'un fichier
    Par nelsa dans le forum Autres langages
    Réponses: 2
    Dernier message: 20/09/2004, 12h26

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