Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Masquer des colonnes en fonction d'une période

anthooooony

XLDnaute Occasionnel
Bonjour Cher Downloadienne et Dien,

Je cherche une façon de masquer des colonnes par rapport à un critère et je vois beaucoup de chose sauf la réponse à mon probleme.


je cherche à mettre dans une colonne les mois à garder et que la macro masquer les autres mois.

1 à 3 je garde janvier à mars et isole avril à décembre

3 à 5 je garde mars à mai et isole janvier février, et juin à décembre.


Voici une macro que j'ai trouvé.

je continue mes recherches.

Merci d'avance de votre aide

Anthooooony


Code:
Sub Masque()
'On bloque le rafraichissement de l'écran
Application.ScreenUpdating = False
Dim depart As Long
'On cherche le numéro de la dernière colonne utilisée
depart = Cells(1, Columns.Count).End(xlToLeft).Column
'on parcours les autres colonnes et si la ligne 2 de la colonne
'est différente de 3, on la masque
'Avec Excel 2003, j'ai 256 colonnes. Avec une autre version, il faut changer le 256 par le
'nombre de colonnes
   For i = depart To 256
    If Cells(2, i) <> 3 Then Columns(i).Hidden = True
    Next i
End Sub
et pour reafficher
Sub Affiche()
    Cells.Select
    Selection.EntireColumn.Hidden = False
    Range("A1").Select
End Sub
 

Pièces jointes

  • masquer.xlsx
    10.9 KB · Affichages: 17

Caillou

XLDnaute Impliqué
Re : Masquer des colonnes en fonction d'une période

Bonjour,

Un bout de code :
Code:
Sub Masquer_colonnes()
  Const coldeb As Integer = 4
  Const colfin As Integer = 15
  
  Dim colgarddeb As Integer
  Dim colgardfin As Integer
  Dim i As Integer
  
  colgarddeb = Range("A2")
  colgardfin = Range("A3")
  
  For i = coldeb To colfin
    If i - 3 >= colgarddeb And i - 3 <= colgardfin Then
      Columns(i).Hidden = False
    Else
      Columns(i).Hidden = True
    End If
  Next
End Sub
Caillou
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…