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 :

Masquer une ligne selon resultat dans une colonne


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 113
    Points : 52
    Points
    52
    Par défaut Masquer une ligne selon resultat dans une colonne
    Bonjour tout le monde...
    Dans mon fichier Excel j'ai une liste d'actions à effectuer dans le cadre d'un projet. À la colonne G, je dois indiquer si l'action est En Cours, Complété, ou Pas Encore commencé.

    Comment faire en sorte de cacher toute la ligne lorsque j'indique dans la colonne G que l'action est Complété

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2008
    Messages : 61
    Points : 42
    Points
    42
    Par défaut
    je pense que tu peux faire une macro du type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub hide()
    Range("G1:G10").Select G1:G10 c'est la plage ou est marquer "complété"
    For Each o In Selection
    If o.Value = "complété" Then
    o.EntireRow.Hidden = True
    End If
    Next
     
    End Sub
    Ca ressemble à quelque chose comme ca je pense mais désolé je peux pas assurer l'écriture de la macro

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 113
    Points : 52
    Points
    52
    Par défaut Masquer une ligne selon resultat dans une colonne
    Je ne comprend pas ton code nadege46...
    Ou est ce que je mets ce code ? et surtout c'est koi le o que tu as mis dans ton code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub hide()
    Range("G1:G10").Select
    For Each o In Selection
    If o.Value = "complété" Then
    o.EntireRow.Hidden = True
    End If
    Next
    End Sub
    C'est quoi le o dans l'expression
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each o in Selection

  4. #4
    Nouveau membre du Club
    Inscrit en
    Novembre 2003
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 26
    Points : 25
    Points
    25
    Par défaut
    Bonjour,
    Il faut créer une macro via l'éditeur de macros (ALT+F8)
    Tu saisis le nom de ta macro >>> Toto
    Sélectionne le classeur dans lequel tu poses ta macro >> Ce claseur par exemple

    L'éditeur de macro s'ouvre, efface "Sub Toto()" et "End Sub" et colles le code de nadege46

    Pour le "o", en fait il s'agit du nom de la variable qui représente chacune des cellules de la sélection; tu peux mettre n'importe quel nom, cela n'a pas pas d'importance (en respectant les normes de nommage)

    Esuite tu pose une image dans ton document excel, un bouton, un cadre ou autre puis clic droit sur l'objet >> Affecter une macro >> Tu prends celle que tu as créée et quand tu clic sur l'objet cela lance la macro...

    Voila...

  5. #5
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour à tous,

    Cela peut se faire via une procédure événementielle qui réagira automatiquement lorsqu'on introduira "Complété" dans une des cellules de la colonne G.
    Procédure à insérer dans le module de la feuille concernée (pas dans un module standard)

    Tu fais Alt+F11, double clic sur la feuille en question dans la colonne de gauche et dans la partie droite tu insères le code ci-dessous.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Worksheet_Change(ByVal Target As Range)
    'si plusieurs cellules sélectionnées on quitte la procédure
    If Target.Count > 1 Then Exit Sub
     
    'si la cellule modifiée est dans la colonne G (colonne 7)
    If Target.Column = 7 Then
        'si la valeur de la cellule est "Complété" alors on masque la ligne
        'attention, la valeur est sensible à la casse (majuscule et minuscule)
        If Target.Value = "Complété" Then Target.EntireRow.Hidden = True
    End If
    End Sub
    Dès que l'on modifie une cellule et que sa valeur devient "Complété", la ligne se masquera.

    Cdlt
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

Discussions similaires

  1. [XL-2007] Chercher une valeur dans une ligne et renvoyer le # de colonne
    Par gui-llaume dans le forum Excel
    Réponses: 2
    Dernier message: 21/02/2013, 09h39
  2. [XL-MAC 2008] Extraire une ligne selon contenu d'une colonne
    Par jmignot dans le forum Excel
    Réponses: 8
    Dernier message: 11/04/2011, 09h17
  3. Réponses: 1
    Dernier message: 26/12/2010, 21h20
  4. inserer une ligne aprés tri dans une colonne
    Par arctica dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/09/2010, 11h07
  5. [XL-2007] Probléme pour séléctionner une ligne sur trois dans une colonne
    Par ro31hg dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/02/2010, 20h48

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