Masquer colonnes avec chacunes des conditions différentes

Bonjour à vous,

je suis nouveau sur ce forum est également débutant en matière de VBA.

Voici le cas:

Je souhaiterai masquer la colonne J à la condition que la cellule C10 contienne "Non".

Mais également, masquer la colonne K à la condition que la cellule F10 contienne "Non";

Masquer la colonne L à la condition que la cellule F11 contienne "Non";

Masquer la colonne M et N à la condition que la cellule G10 contienne "Non";

Tout ceci sur la même feuille Excel.

J'ai commencé par la formule ci-dessous, elle marche très bien:

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("C10")) Is Nothing Then Exit Sub

If Target.Value <> "Non soumis" Then Columns(10).Hidden = False

If Target.Value = "Non soumis" Then Columns(10).Hidden = True

End Sub

J'ai trouvé ce code en cherchant sur plusieurs de vos réponses et en adaptant à mon cas mais j'ai appris également que l'on ne peut pas mettre plusieurs Worksheet_Change sur une même feuille.

Je suis bloqué et n'arrive plus à avancer.

Je vous remercie d'avance pour votre aide,

Bonne journée.

Bonjour

Une solution

Private Sub Worksheet_Change(ByVal Target As Range)

  If Target.Count > 1 Then Exit Sub

  If Not Intersect(Target, Range("C10")) Is Nothing Then
    Columns("J").Hidden = IIf(Target = "non soumis", True, False)
  ElseIf Not Intersect(Target, Range("F10")) Is Nothing Then
    Columns("K").Hidden = IIf(Target = "non soumis", True, False)
  ElseIf Not Intersect(Target, Range("F11")) Is Nothing Then
    Columns("L").Hidden = IIf(Target = "non soumis", True, False)
  ElseIf Not Intersect(Target, Range("G10")) Is Nothing Then
    Columns("M:N").Hidden = IIf(Target = "non soumis", True, False)
  End If
End Sub

Merci beaucoup pour l'accueil et également pour cette réponse.

Je viens de l'essayer, elle fonctionne à merveille !

Merci beaucoup !

Rechercher des sujets similaires à "masquer colonnes chacunes conditions differentes"