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 des colonnes dans Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    autre
    Inscrit en
    Novembre 2016
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Novembre 2016
    Messages : 14
    Par défaut Masquer des colonnes dans Excel
    Bonjour à tous,

    Je sollicite à nouveau vos connaissances pour masquer des colonnes dans un fichier Excel.

    Les colonnes A,B,C,D restant fixes
    J'aimerai si j'inscris P1 en "B2" seule la colonne E avec P1 s'affiche.
    Si j'inscris P2 en "B2" seule la colonne F avec P2 s'affiche
    Si j'inscris P3 en "B2" seule la colonne G avec P3 s'affiche
    Ect...

    Pouvez-vous m'aider à développer ce code?

    Le fichier de travail se trouve en pièce jointe et un code existe déjà pour la sélection des lignes de résultats désirés correspondant à la sélection d'un ENEGE en A2.

    Merci à vous+++

    resultsessai2.xlsm



    Merci à vous pour votre aide précieuse.

    Bonne journée à tous

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    certe il y a mille fois mieux que ce code bricolé par un débutant en VBA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False
    Dim dercolonne As Long
    Dim valerech As String
    valerech = Range("B2").Value
    Range(Columns(1), Columns(30)).Select
    Selection.EntireColumn.Hidden = False
    dercolonne = Cells(8, 30).End(xlToLeft).Column
        For i = 5 To dercolonne
        If Cells(8, i) <> valerech Then Columns(i).Hidden = True
        Next i
     Application.ScreenUpdating = True
     Range("B2").Select
    End Sub
    bon courage

  3. #3
    Membre Expert Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Par défaut
    Salut,

    Voici ce que je te propose

    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
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    Application.ScreenUpdating = False
        If Target.Address = "$A$2" Then
            If [A2] = Empty Then
                Range("D9:D15").EntireRow.Hidden = True
                Exit Sub
            End If
            Set MyPlage = Range("D9:D15")
            For Each cell In MyPlage
                If UCase(cell.Value) <> UCase([A2]) Then
                    cell.EntireRow.Hidden = True
                Else
                    cell.EntireRow.Hidden = False
                End If
            Next
        End If
        If Target.Address = "$B$2" Then
            col = 5
            Do Until Cells(8, col).Value = ""
                If UCase(Cells(8, col).Value) = UCase(Target.Value) Then
                    Cells(8, col).EntireColumn.Hidden = False
                Else
                    Cells(8, col).EntireColumn.Hidden = True
                End If
                col = col + 1
            Loop
        End If
        Application.ScreenUpdating = True
    End Sub
    J'ai laissé ton code de la macro sur changement et j'ai ajouté le code que tu cherchais.

    Pour info, le ucase que j'ai ajouté permet que ton code soit bon pour "p1" comme "P1".

    En espérant que c'est bien ce que tu cherchais. Si c'est le cas, pense au pouce en bas ...

  4. #4
    Membre averti
    Femme Profil pro
    autre
    Inscrit en
    Novembre 2016
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Novembre 2016
    Messages : 14
    Par défaut
    Bonsoir à tous les deux!!

    Merci beaucoup les deux codes fonctionnent très bien.

    ça va pouvoir me faire avancer à pas de géant dans mon analyse.


    Merci +++

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

Discussions similaires

  1. [XL-2007] Comment masquer des colonnes dans un extrait de données tirées d'un TCD
    Par mouftie dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 31/01/2015, 07h52
  2. [XL-2003] Comparer des colonnes dans excel
    Par filsdepub dans le forum Excel
    Réponses: 2
    Dernier message: 24/02/2011, 11h10
  3. copier des colonnes dans un fichier excel
    Par nizar24 dans le forum Shell et commandes GNU
    Réponses: 24
    Dernier message: 14/02/2011, 17h07
  4. [Dojo] Masquer dynamiquement des colonnes dans dataGrid
    Par bellenthan dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 14/09/2010, 11h29
  5. Masquer des colonnes dans un tableau
    Par fornorst dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 26/04/2006, 21h00

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