Choix de la liste déroulante et cellules inacessibles
Bonjour,
J'aurais souhaité savoir s'il était possible qu'une liste déroulante décide de ce qui apparaît dans la suite du tableau :
J'ai plusieurs options dans ma liste déroulante, et quand j'en sélectionne un, je veux que seules les cases correspondantes à ce choix apparaissent.
Dans mon tableau je veux que quand je sélectionne 'choix 1', seules les lignes intitulées 'Ligne qui correspond à choix 1' apparaissent. Et ainsi de suite pour le reste.
Je précise que mes tableaux ne sont pas uniformes (pas le même nombre de colonnes) et que j'ai des cellules fusionnées et de différentes tailles.
A la place de la liste déroulante, des cases à cocher m'iraient aussi . Et si les cellules ne peuvent pas disparaître, les griser me suffiraient !
Enfin, je ne touche pas trop aux macros.
Merci d'avance et je m'excuse si la question a déjà été posée.
Anthoine
Bonjour. Bienvenue sur le Forum
Commençons par le début
Code Feuil1
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("C1")) Is Nothing Then
Call Masque_Lignes
End If
End Sub Code dans le module Masque
Sub Masque_Lignes()
If Cells(1, 3) = "Choix 1" Then
Rows("3:8").Select
Selection.EntireRow.Hidden = False
Rows("10:17").Select
Selection.EntireRow.Hidden = True
Rows("19:24").Select
Selection.EntireRow.Hidden = True
Rows("26:27").Select
Selection.EntireRow.Hidden = True
ElseIf Cells(1, 3) = "Choix 2" Then
Rows("10:17").Select
Selection.EntireRow.Hidden = False
Rows("3:8").Select
Selection.EntireRow.Hidden = True
Rows("19:24").Select
Selection.EntireRow.Hidden = True
Rows("26:27").Select
Selection.EntireRow.Hidden = True
ElseIf Cells(1, 3) = "Choix 3" Then
Rows("19:24").Select
Selection.EntireRow.Hidden = False
Rows("3:8").Select
Selection.EntireRow.Hidden = True
Rows("10:17").Select
Selection.EntireRow.Hidden = True
Rows("26:27").Select
Selection.EntireRow.Hidden = True
ElseIf Cells(1, 3) = "Choix 4" Then
Rows("26:27").Select
Selection.EntireRow.Hidden = False
Rows("3:8").Select
Selection.EntireRow.Hidden = True
Rows("10:17").Select
Selection.EntireRow.Hidden = True
Rows("19:24").Select
Selection.EntireRow.Hidden = True
End If
End SubCordialement
Bonjour,
Tout d'abord merci Amadeus parce que c'est ça que je souhaitais.
Par contre, quand j'essaie de l'appliquer sur mon vrai fichier , j'ai bien sûr des problèmes.
Rien ne se passe quand je change de choix dans l'affichage. J'ai pourtant fait l'outil pas à pas détaillé dans la macro, changé toutes les lignes et mis les correspondantes à mes choix et changé leur nom. j'ai fait attention à où se situait ma case de choix. Du coup, je ne comprends pas ce qui coince. Une idée ?
Sinon, je peux t'envoyer mon fichier en MP pour que tu vois ce qui coince ?
Merci d'avance
Anthoine