Fonction Masquer

Le
BHY
J'aimerai créer une fonction qui permette en fonction de la valeur d'une
cellule de masquer ou non un ensemble de lignes consécutives.
Est-ce possible avec une fonction ?
Si oui comment ?
Si non quelle est la meilleure façon pour obtenir le même résultat ?
--
BHY
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
anonymousA
Le #4448301
Bonjour,

Avec une fonction c'est impossible. Avec l'utilisation d'une procédure
evenementielle de feuille de type worksheet_Change , c'est possible.

A mettre dans le module de feuille

Ici, je me place dans l'hypothèse où c'est le changement de la cellule
A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un
exemple, il y a bien sur d'autres manières de faire par programmation.

Private Sub Worksheet_Change(ByVal Target As Range)

With Target
If .Item(1).Address(0, 0) = "A1" Then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True
End If
End With

End Sub

A+



J'aimerai créer une fonction qui permette en fonction de la valeur d'une
cellule de masquer ou non un ensemble de lignes consécutives.
Est-ce possible avec une fonction ?
Si oui comment ?
Si non quelle est la meilleure façon pour obtenir le même résultat ?


BHY
Le #4448151
Merci pour l'info, effectivement les lignes sont masquées quand A1 change.
Question subsidiaire, comment je les rend à nouveau visibles ?
Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2
Merci
--
BHY



Bonjour,

Avec une fonction c'est impossible. Avec l'utilisation d'une procédure
evenementielle de feuille de type worksheet_Change , c'est possible.

A mettre dans le module de feuille

Ici, je me place dans l'hypothèse où c'est le changement de la cellule
A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un
exemple, il y a bien sur d'autres manières de faire par programmation.

Private Sub Worksheet_Change(ByVal Target As Range)

With Target
If .Item(1).Address(0, 0) = "A1" Then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True
End If
End With

End Sub

A+



J'aimerai créer une fonction qui permette en fonction de la valeur d'une
cellule de masquer ou non un ensemble de lignes consécutives.
Est-ce possible avec une fonction ?
Si oui comment ?
Si non quelle est la meilleure façon pour obtenir le même résultat ?





anonymousA
Le #4447991
Private Sub Worksheet_Change(ByVal Target As Range)

With Target
If .Item(1).Address(0, 0) = "A1" Then
If .value =1 then Range(.Offset(1, 0), .Offset(4,
0)).EntireRow.Hidden = True
elseif .value=2 then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false
end if
End If
End With

End Sub

A+


Merci pour l'info, effectivement les lignes sont masquées quand A1 change.
Question subsidiaire, comment je les rend à nouveau visibles ?
Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2
Merci


BHY
Le #4445881
Merci, Super !
--
BHY



Private Sub Worksheet_Change(ByVal Target As Range)

With Target
If .Item(1).Address(0, 0) = "A1" Then
If .value =1 then Range(.Offset(1, 0), .Offset(4,
0)).EntireRow.Hidden = True
elseif .value=2 then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false
end if
End If
End With

End Sub

A+


Merci pour l'info, effectivement les lignes sont masquées quand A1 change.
Question subsidiaire, comment je les rend à nouveau visibles ?
Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2
Merci





Publicité
Poster une réponse
Anonyme