Bonjour Forum
je souhaite avoir un code des "if" imbriqués pour afficher et masquer les lignes selon le nombre saisié, je m'explique
j'ai un fichier
dans la cellule G41( jaune) nombre de lot des valeurs variable de 0 au 8
si je saisie la valeur 2 dans la cellule G41, il s'affiche que les lignes 44 et 76 seulement
après si je sélectionne dans la cellule AN44 (valeur entre 0 et 15 de la ligne 44) la valeur 3
j'aurais (il s'affiche) les lignes 46 au 51
et le mème raisonnement pour la cellule AN76 ( de la ligne 76) la valeur 5; j'aurais les ligne
78 au 87.
merci
Pièces jointes
CHARLIE if imbriqués pour afficher et masquer les lignes.xlsx
Bonjour,
Je sais pas si j'ai pigé.
Voici un petit début pour voir si c'est ca
Par contre je comprends pas plus loin.
Code à mettre en worksheet_change
Bruno
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target < 1 Then Rows("45:1000").Hidden = False: Exit Sub
If Target.Address = "$G$41" Then
Rows("45:1000").Hidden = False
haut = 45: bas = 75
For k = 1 To Target.Value
Rows(haut & ":" & bas).Hidden = True
haut = haut + 32: bas = bas + 32
Next
End If
End Sub
Bonjour,
Je sais pas si j'ai pigé.
Voici un petit début pour voir si c'est ca
Par contre je comprends pas plus loin.
Code à mettre en worksheet_change
Bruno
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target < 1 Then Rows("45:1000").Hidden = False: Exit Sub
If Target.Address = "$G$41" Then
Rows("45:1000").Hidden = False
haut = 45: bas = 75
For k = 1 To Target.Value
Rows(haut & ":" & bas).Hidden = True
haut = haut + 32: bas = bas + 32
Next
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target < 1 Then Rows("44:1000").Hidden = True: Exit Sub
If Target.Address = "$G$41" Then
haut = 45: bas = 75
nb = 1
For k = 44 To 139 Step 32
If nb <= Target.Value Then Rows(k).Hidden = False: nb = nb + 1
Next
End If
End Sub