Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

COMMENT MASQUER UNE LIGNE SUR LE RESULTAT D'UNE FONCTION SI

7 réponses
Avatar
sylvain
Est-ce possible de masquer une ligne basée sur le resulat du contenu d'une
cellule.

exemple: Si A2=vrai ---> MASQUER LA LIGNE COMPLETE DE CETTE CELLULE.

A etre éventuellement utilisé dans une macro-commande.

Merci.
Sylvain.
Montreal, QC. Canada.

7 réponses

Avatar
JB
Bonsoir,

For Each c In Range("A2", [A65000].End(xlUp))
If c.Value = True Then c.EntireRow.Hidden = True
Next c

Cordialement JB


Est-ce possible de masquer une ligne basée sur le resulat du contenu d' une
cellule.

exemple: Si A2=vrai ---> MASQUER LA LIGNE COMPLETE DE CETTE CELLULE.

A etre éventuellement utilisé dans une macro-commande.

Merci.
Sylvain.
Montreal, QC. Canada.


Avatar
JFrancois QC
Salut Sylvain,
C'est possible via une procédure évènementielle
ex.:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = True Then
Target.EntireRow.RowHeight = 0
Else
Target.EntireRow.RowHeight = 15
End If
End Sub

Bonne journée




Est-ce possible de masquer une ligne basée sur le resulat du contenu d'une
cellule.

exemple: Si A2=vrai ---> MASQUER LA LIGNE COMPLETE DE CETTE CELLULE.

A etre éventuellement utilisé dans une macro-commande.

Merci.
Sylvain.
Montreal, QC. Canada.



Avatar
JièL
Bonjoir(c) sylvain

Moi ce que je me pose comme question, c'est comment vous allez la
"démasquée" si la valeur ou la condition change ou encore si vous avez
besoin de l'intégralité du tableau ? ;-)

Pourquoi ne pas utiliser les filtres auto ?

Il suffit ensuite de filtrer sur la colonne contenant vrai ou n'importe
quoi d'autre et comme c'est facilement modifiable, et "réafficher tout"
pour pouvoir faire des modifs dans le tableau... et sans macro ;-)

Vi, je fais parti des AMIS ;-)

(Anti Macro Inutilement Superfétatoire)

--
JièL / Jean-Louis GOUBERT
http://forums.offices.free.fr/
là bas mieux qu'en face ;-)

Le 01/08/2006 20:31 vous avez écrit ceci :
Est-ce possible de masquer une ligne basée sur le resulat du contenu d'une
cellule.

exemple: Si A2=vrai ---> MASQUER LA LIGNE COMPLETE DE CETTE CELLULE.

A etre éventuellement utilisé dans une macro-commande.

Merci.
Sylvain.
Montreal, QC. Canada.



Avatar
JB
http://cjoint.com/?icinvTROEb

Sub masque()
For Each c In Range("A2", [A65000].End(xlUp))
If c.Value = True Then c.EntireRow.Hidden = True
Next c
End Sub

Sub demasque()
[A:A].EntireRow.Hidden = False
End Sub

JB


Bonjoir(c) sylvain

Moi ce que je me pose comme question, c'est comment vous allez la
"démasquée" si la valeur ou la condition change ou encore si vous avez
besoin de l'intégralité du tableau ? ;-)

Pourquoi ne pas utiliser les filtres auto ?

Il suffit ensuite de filtrer sur la colonne contenant vrai ou n'importe
quoi d'autre et comme c'est facilement modifiable, et "réafficher tout"
pour pouvoir faire des modifs dans le tableau... et sans macro ;-)

Vi, je fais parti des AMIS ;-)

(Anti Macro Inutilement Superfétatoire)

--
JièL / Jean-Louis GOUBERT
http://forums.offices.free.fr/
là bas mieux qu'en face ;-)

Le 01/08/2006 20:31 vous avez écrit ceci :
Est-ce possible de masquer une ligne basée sur le resulat du contenu d'une
cellule.

exemple: Si A2=vrai ---> MASQUER LA LIGNE COMPLETE DE CETTE CELLULE.

A etre éventuellement utilisé dans une macro-commande.

Merci.
Sylvain.
Montreal, QC. Canada.





Avatar
JièL
Bonjoir(c) JB

ouais... en gros vous réinventez le filtre auto, mais en moins souple,
moins rapide, moins portable et plus lourd ;-))))))

--
JièL / Jean-Louis GOUBERT
http://forums.offices.free.fr/
là bas mieux qu'en face ;-)

Le 02/08/2006 08:13 vous avez écrit ceci :
http://cjoint.com/?icinvTROEb

Sub masque()
For Each c In Range("A2", [A65000].End(xlUp))
If c.Value = True Then c.EntireRow.Hidden = True
Next c
End Sub

Sub demasque()
[A:A].EntireRow.Hidden = False
End Sub


Avatar
JB
C'est une solution parmi d'autres.
Pour un utilisateur qui ne connaît Excel, il peut être + simple de
cliquer sur les boutons.

JB

Bonjoir(c) JB

ouais... en gros vous réinventez le filtre auto, mais en moins souple,
moins rapide, moins portable et plus lourd ;-))))))

--
JièL / Jean-Louis GOUBERT
http://forums.offices.free.fr/
là bas mieux qu'en face ;-)

Le 02/08/2006 08:13 vous avez écrit ceci :
http://cjoint.com/?icinvTROEb

Sub masque()
For Each c In Range("A2", [A65000].End(xlUp))
If c.Value = True Then c.EntireRow.Hidden = True
Next c
End Sub

Sub demasque()
[A:A].EntireRow.Hidden = False
End Sub




Avatar
JièL
Bonjoir(c) JB

Le 02/08/2006 12:32 vous avez écrit ceci :
C'est une solution parmi d'autres.
Pour un utilisateur qui ne connaît Excel, il peut être + simple de
cliquer sur les boutons.


Voui, admettons... mais je reste quand même septique quand à l'utilisation
d'Excel dans ce cas. Cela sous entend qu'il y a un développeur qui va
faire et maintenir des macros (et sans préjuger des qualités de Sylvain)
qu'il n'a pas l'air de maîtriser parfaitement.

Dans ce cas ça m'a l'air d'être la quadrature du cercle. Faire des macros
c'est bien, je n'ai rien à dire la dessus, mais par contre j'ai tendance à
bondir lorsque ces macros réinventent les fonctionnalités déjà présentes
dans le produit, surtout quand on connaît la souplesse et la facilité
d'utilisation des filtres auto. Faut pas toujours prendre les utilisateurs
finaux (finauds ? ;-D) pour des débiles profond, ou alors il faut leur
développer des applis clés en main, et du coup plus besoin d'Excel ;-)

Mais je suis d'accord avec vous, c'est une solution parmi d'autres, même
si elle ne me semble pas la plus simple.

"Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques,
j'apprends."

--
JièL / Jean-Louis GOUBERT
http://forums.offices.free.fr/
là bas mieux qu'en face ;-)