Afficher / Masquer Colonne H sur tout le classeur

Bonjour le forum

Peut-on faire afficher sur tout le classeur à partir de Janvier?

Macros toutes dans ThisWorkbook

Merci à vous pour vos éventuels retours

Cordialement

Option Explicit
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If InStr(1, "JanvierFévrierMarsAvrilMaiJuinJuilletAoûtSeptembreOctobreNovembreDécembre", _
        Split(Sh.Name, " ")(0), vbTextCompare) Then
       ActiveWindow.ScrollRow = 1                       
    End If
End Sub
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Target.Count = 1 Then
    If Not Intersect(Target, [A3]) Is Nothing Then
        If Not Target.Comment Is Nothing Then AfficherMasquerDistanceMoisPrecedent

    End If
    If Not Intersect(Target, [G1]) Is Nothing Then
        AfficherMasquerColonneH
    End If
End If

End Sub

Bonjour,

Tu veux pouvoir agir sur l'affichage de la colonne H jusqu'au 31/12/2019 puis après plus ?

If Not Intersect(Target, [G1]) Is Nothing Then
    If Date < #1/1/2020# Then AfficherMasquerColonneH
End If

Bonjour Theze

Oui jusqu'au 31/12/2019

Après j'ai des programmes pour 2020 => 01/01/2020 au 31/12/2020

2021 => 01/01/2021 au 31/12/2021

2022 => 01/01/2022 au 31/12/2022

Tu peux me le mettre dans la macro qui est la même STP?

Cordialement

Bonjour le forum

Pas une âme charitable pour m'aider ou j'ai demandé un C$$$$$$$E?

Cordialement

Bonjour,

Je suppose donc que la colonne à masquer est fonction de l'année donc, il n'est pas nécessaire de contrôler du 01/01 au 31/12 mais seulement de l'année ! Une piste à adapter :

Sub Test()

    If Not Intersect(Target, [G1]) Is Nothing Then

        Select Case Year(Date)

            Case 2019: AfficherMasquerColonneH "H"
            Case 2020: AfficherMasquerColonneH "I"
            Case 2021: AfficherMasquerColonneH "J"

        End Select

    End If

End Sub

Sub AfficherMasquerColonneH(Col As String) '<--- en argument, demande la ou les lettres de la colonne à masquer

    MsgBox "C'est la colonne '" & Col & "' qui va être masquée !"
    Range(Col & ":" & Col).EntireColumn.Hidden = True

End Sub

Il peut être judicieux de passer en argument la colonne à masquer à la Sub "AfficherMasquerColonneH()" !

Bonjour Theze

C'est Toujours la colonne H quelque soit l'année

Cordialement

mais alors, pourquoi l'année aurait-elle une importance ?

re Theze

Non l'année n'a aucune importance c'était juste pour montrer mes fichiers

Je double clique sur G1 fichier 2020 par exemple et toutes les colonnes H de tous les mois s'affichent.

Merci à toi

Re Theze

Je vais essayer de le faire et je posterais sur le forum

Merci à toi

Cordialement

De cette façon peut être ?

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)

    Dim Fe As Worksheet

    Cancel = True

    If Target.Address(0, 0) = "A3" Then

        If Not Target.Comment Is Nothing Then AfficherMasquerDistanceMoisPrecedent

    End If

    If Target.Address(0, 0) = "G1" Then

        'cache ou affiche toutes les colonnes H de toutes les feuilles du classeur
        For Each Fe In Worksheets
            Fe.Columns(8).EntireColumn.Hidden = Not Fe.Columns(8).EntireColumn.Hidden
        Next Fe

    End If

End Sub

Un double clic cache les colonnes, un autre double clic affiche les colonnes mais attention, au départ, il faut qu'elles soient toutes cachées ou affichées !

Re Theze

Super Excellent

Pas évident sans fichier

Un GRAND merci à toi

Bonne fin de journée

Cordialement

Content de t'avoir aidé

Rechercher des sujets similaires à "afficher masquer colonne tout classeur"