Affichage de colonne suivant une valeur

Bonjour,

Voici un début de formule pour faire apparaitre certaine colonne d'après une valeur, que je voudrais simplifier, en sachant que la différence entre chaque colonne est chaque fois de 16.

Application.ScreenUpdating = 0

Columns("G:AFF").EntireColumn.Hidden = True
If Range("B1").Value = Range("G3").Value Then Columns("G:V").EntireColumn.Hidden = False
If Range("B1").Value = Range("W3").Value Then Columns("W:AL").EntireColumn.Hidden = False
If Range("B1").Value = Range("AM3").Value Then Columns("AM:BB").EntireColumn.Hidden = False
If Range("B1").Value = Range("BC3").Value Then Columns("BC:BR").EntireColumn.Hidden = False
If Range("B1").Value = Range("BS3").Value Then Columns("BS:CH").EntireColumn.Hidden = False
If Range("B1").Value = Range("CI3").Value Then Columns("CI:CX").EntireColumn.Hidden = False
If Range("B1").Value = Range("CY3").Value Then Columns("CY:DN").EntireColumn.Hidden = False

etc.. etc.. etc... jus qu’a AFF

Application.ScreenUpdating = -1

Set objFeuille = ActiveSheet

merci pour votre aide.

Bonsoir

En admettant que la valeur en G3, W3, AM3 soit unique

Une solution

Sub test()
Dim I As Integer

  Application.ScreenUpdating = False

  Columns("G:AFF").Hidden = True

  For I = 7 To 838 Step 16
    If Range("B1") = Cells(3, I) Then
      Columns(I).Resize(, 16).Hidden = False
      Exit For
    End If
  Next I
End Sub

Super merci

tu ma fait gagner un temps fou.

Rechercher des sujets similaires à "affichage colonne suivant valeur"