Cacher (ou non) des colonnes en fonctions de DEUX critères
Bonsoir à tous,
Je suis face à la problématique suivante :
Je souhaite afficher ou non une série de colonnes en fonction de deux critères préalables.
En colonne B : une colonne avec plusieurs choix possibles par lignes : choux, carottes, tomates ...
En colone C : une autre colonne avec d'autres choix possible par ligne : maison, tente, cabanne
En fonction des combinaisons choux -maison ou bien carottes-maison etc ... je souhaiterai cacher ou non d'autres colonnes type colonne D:E pour choux- carottes et colonne R-T pour la combinaison carottes-maison.
Le fait de cacher plusieurs colonnes permettrait aux utilisateurs de ce fichier (à que je demande remplir) ce questionnaire) de voir plus clairement les colonnes qu'ils doivent remplir en fonction des critères qu'ils ont préalablement remplit.
Je joins en pièce jointe un exemple simplifié ( choux patate) de mon probème.
Merci à tous par avance
Personne ne peut répondre à ma problématique ?
Bonjour,
Un exemple de procédure.
A tester.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iRow As Integer, tmp As String
If Not Application.Intersect(Target, Range("A:B")) Is Nothing Then
If Target.Count > 1 Then Exit Sub
Application.ScreenUpdating = False
iRow = Target.Row
tmp = Cells(iRow, 1) & Cells(iRow, 2)
Select Case tmp
Case "chouxtente"
Range("E:H").EntireColumn.Hidden = False
Range("F:H").EntireColumn.Hidden = True
Case "tomateauberge"
Range("E:H").EntireColumn.Hidden = False
Range("E:G").EntireColumn.Hidden = True
Case Else
'
End Select
End If
End SubMerci beaucoup pour cette solution, celle-ci marche très bien !
Cependant j'aurai quelques questions supplémentaires :
- Dans mon questionnaire, il se trouve que les deux colonnes à critères (dans votre exemple B et C) ne se trouvent pas à la suite l'une de l'autre. C'est à dire qu'il sagit disons de la colonne B et de la colonne D. J'ai essayé de modifier le code mais cela ne marche pas. Pouvez vous m'indiquer la marche à suivre ?
- Deuxième question : Dans mes critères, il existe des combinaisons du type navet-cabane, navet-maison, navet-tente qui ont exactement les mêmes colonnes à cacher et à afficher, existe t - il un moyen de faire des multiple cases ? afin d'éviter d'alourdir le code en réecrivant plusieurs fois la même chose.
Merci beaucoup pour votre aide,
alice
Bonjour à tous,
éviter d'alourdir le code en réecrivant plusieurs fois la même chose.
Case "navetcabane", "navetmaison", "navettente"Ou bien si tu as vraiment beaucoup de cas tu pourrais dans 'feuil2' lister les colonnes à afficher sous la forme D,F:G,R:T,Z par exemple (ou sous forme de n° de colonne, séparer les plages par des virgules).
Si pour un légume ou un équipement c'est toujours les même colonnes à afficher tu as juste 2 colonnes de plus à remplir.
Si ça dépend réellement de la combinaison il faudrait faire un tableau rectangulaire, avec titres ligne et colonne, rempli à moitié (jusqu'à la diagonale).
A partir de là il sera possible de faire un code qui récupère ces infos pour n'afficher que les colonnes listées et masquer les autres sauf A:C.
eric