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 :

Masque des colonnes selon certains critères sans les filtres


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Août 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 94
    Points : 84
    Points
    84
    Par défaut Masque des colonnes selon certains critères sans les filtres
    Bonjour à tous,

    Dans une base de donnée, je souhaiterais afficher les lignes et uniquement celle-ci ayant la valeur "Dossier" qui se trouve dans la colonne (D) (et donc masquer toutes les autres lignes) en plus je souhaiterais que la ligne numéro 99 soit également affichée sans tenir compte de la valeur de la cellule qui se trouve en D99.
    Pourriez vous m'aider dans l'écriture des lignes de commandes?

    D'avance merci,

    Cordialement

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 757
    Points : 572
    Points
    572
    Par défaut filtres
    Bonjour,

    Je pense que vous devriez déjà filtrer ce qui vous intéresse comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Filtre()
     
        Rows("1:1").Select
        Selection.AutoFilter
        Selection.AutoFilter Field:=4, Criteria1:="=Dossier", Operator:=xlAnd
    End Sub
    ensuite copier le résultat ou copier les N°s de lignes. Puis enlever les filtres et faire apparaître les N°s de lignes précédemment copiés + la ligne 99.

    Cela pourrait être une idée
    OS : LinuxMint 20

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 757
    Points : 572
    Points
    572
    Par défaut Copie du filtre
    Bonjour,

    Pour copier les éléments qui ont étés filtrés, je propose ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Filtre()
     
        Rows("1:1").Select
        Selection.AutoFilter
        Selection.AutoFilter Field:=4, Criteria1:="=Dossier", Operator:=xlAnd
        Feuil1.AutoFilter.Range.SpecialCells(xlCellTypeVisible).Copy
     
    Worksheets("Feuil2").Activate
        Range("A1").Select
        ActiveSheet.Paste
     
    End Sub
    Ici j'ai copié collé les lignes filtrées dans une seconde feuille mais tu peux très bien les repositonner sur la première feuille avec la ligne 99
    OS : LinuxMint 20

  4. #4
    Membre régulier
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Août 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 94
    Points : 84
    Points
    84
    Par défaut
    Bonjour

    Et merci de vos réponses. Ce n'est pas exactement ce que je souhaitais. Sur une même feuille j'ai une base de donnée et je souhaite afficher ou masquer des lignes en fonction d'une valeur choisie dans les cellules de la colonne B.
    Avec en plus la ligne 99 affichée systématiquement. Je ne souhaite pas passer par les filtres du menu "Données"
    J'aurais donc plusieurs macros qui me feront apparaître des lignes selon une valeur choisie.
    La base de données est de 99 ligne et le nombres de macro sera de 22

    J'espère avoir été plus précis dans ma demande. En ce moment j'ai fait ces macros avec l'enregistreur. Mais ça me pose problème lorsque je modifie mon nombre de lignes.

  5. #5
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    voici une solution pour masquer les lignes autres que celles qui contiennent "Dossier" en colonne D et autre que la ligne 99.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
    Sub Masquer()
    Dim ws As Worksheet
    Dim DerLig As Long, i As Long
        Set ws = ThisWorkbook.ActiveSheet
        DerLig = ws.UsedRange.Rows.Count
        For i = 1 To DerLig
            If ws.Range("D" & i) <> "Dossier" And i <> 99 Then ws.Range("D" & i).EntireRow.Hidden = True
        Next i
    End Sub
    Cordialement.

  6. #6
    Membre régulier
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Août 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 94
    Points : 84
    Points
    84
    Par défaut Masque des colonnes selon certains critères sans les filtres
    Bonjour

    Et merci, c'est exactement cela.

    Cordialement

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

Discussions similaires

  1. Cacher des colonnes selon critères
    Par Charlesraheb dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 29/07/2012, 11h42
  2. [Batch] Récupérer tous les fichiers selon certains critères
    Par Mistic100 dans le forum Scripts/Batch
    Réponses: 16
    Dernier message: 27/07/2009, 02h20
  3. Tri de colonnes selon 1 critère
    Par cynoq dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/01/2008, 15h43
  4. Sélection de lignes selon certains critères
    Par gangsterus dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/10/2007, 01h01
  5. Passer des valeurs dans mon actionform sans les afficher
    Par tonito53 dans le forum Struts 1
    Réponses: 6
    Dernier message: 04/01/2007, 12h36

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