masquer un groupe de lignes...

  • Initiateur de la discussion Initiateur de la discussion chomiel
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

chomiel

Guest
bonjour,

peut on masquer un groupe le lignes lorsqu'une cellule a une valeur bien précise???

en gros: je voudrais masquer les lignes 1 à 9 de feuille2 si la case B3 de feuille1 est différentes de 0...

... dans un premier temps.

merci d'avance
 
Slt à tous et touteus

Avec ce bout de code tu devrait parvenir au résultat escompté

Sub Masque()
'Si la cellule B3 de la feuille 1 = 0
If Sheets("Feuil1").Range("B3") = 0 Then
'Je masque les lignes 1 à 9
Sheets("Feuil2").Rows("1:9").EntireRow.Hidden = True
End If
End Sub

@ bientôt
Valrie
 
merci tout plein...

mais, étant donné que ce document s'adresse à "non-informaticiens", il faudrait que ca se "lance" tout seul....
c'est possible???

(oui je sais, ch'uis chiant mais j'y arrive pas...)
merci d'avance.
 
Coucou Chomiel... et tous les autres aussi

Bon pour que cela se fasse automatiquement tu veux dire quand B3 change?

Il faut que tu fasses une macro événementielle lorsque change la feuille1

Soit :

Private Sub Worksheet_Change(ByVal Target As Range)

If Target = Range("B3") Then
If Sheets("Feuil1").Range("B3") = 0 Then
Sheets("Feuil2").Rows("1:9").EntireRow.Hidden = True
Else
Sheets("Feuil2").Rows("1:9").EntireRow.Hidden = False
End If

End If

End Sub

un Else te permet de ré-afficher tes lignes

@ bientôt
Valérie
 
Quand je suis sous VB et que je veux executer tout ca, il m'ouvre une boite où il me demande le nom de la macro.
c'est pas normal non?
du coup, y'a plus rien qui fonctionne alors que tout a l'heure c'était bien.


au secouoooooooooooooouuurs!!!
 
NO PANIC!!

Bien reprenons ensemble,
Dans VBA tu peux mettre des macros en fonction des événements utilisateur (ex : lorsque le contenu d'une feuille change).
pour ce faire,
lorsque tu es dans la VB Editor là où C qui y'a ton programme

Tu as tes modules mais aussi les feuilles (1,2,3... + ThisWorkbook) sinon tu demandes dans le menu Affichage=>Explorateur de projet

Ensuite à l'aide d'un clic droit SUR LA FEUIL1 sur laquelle tu souhaites travailler tu demandes code

En haut de la page tu trouves 2 listes dans la première il faut choisir Worksheet, dans la seconde Change (y'en a plein d'autres que tu peux tester)

Le tour est joué!!

Bien entendu place le code au milieu sinon cela ne sert à rien ;-)

@llez courage
valérie
 
bonjour,

allez hop, on y retourne dans la joie...

quand je remplis mon tableau feuille1, il m'affiche un message :

erreur d'execution9
l'indice n'appartient pas à la séléction

et quand je clic débeug, il pointe sur :
Sheets("feuil2").Rows("1:9").EntireRow.Hidden = True

soit...

me suis dit (pasque j'essaye de penser un peu des fois...) que c'est p't'etre un probleme d'aller chercher sur une autre feuille des infos, alors j'ai copié :

Private Sub Worksheet_Change(ByVal Target As Range)

If Target = Range("A4") Then
Range("A4") = 0 Then
Rows("1:9").EntireRow.Hidden = True
Else
Rows("1:9").EntireRow.Hidden = False
End If

End If
End Sub

sur ma 2e feuille pour voir, comme ca, si ca marche...
... mais ca a pas marché.

(en fait, dans A4 y'a =feuil1!B3 est ce que c'est ca qui marche pas??)

c'est la première fois que je fais ce genre de truc et je me galère un peu...
mais je vais continuer d'essayer des trucs en attendant une reponse de ta part ô toi grande pretresse de vb...
 
Salut Chomiel,

Bien dormi???

Bon est ce que ta feuille s'appelle bien Feuil2? sinon faut changer le code en Sheets("Nom de ta feuille").Rows("1:9").EntireRow.Hidden = True

Ton feuil1!B3 en A4 ne peut pas géné ta macro. En quelle version d'Excel travailles-tu (si tu ne sais pas dans le menu ?=>A propos d'Excel tu vas là trouver)

Au fait je crois qu'il te manquait un SI dans ta macro mais de toute façon qomme elle ne se lance que lorsque la Feuille2 change elle n'a pas du beaucoup travaillée celle là!!

Private Sub Worksheet_Change(ByVal Target As Range)

If Target = Range("A4") Then
SI Range("A4") = 0 Then
Rows("1:9").EntireRow.Hidden = True
Else
Rows("1:9").EntireRow.Hidden = False
End If

End If
End Sub


@+
Valérie (Merci pour "ô toi grande pretresse de vb"...)
je vais rougir ;-)
 
j'ai pas très bien dormi, je me suis fais secouer par le démon de l'informatique (!?!) mais merci quand même.

-pour le nom de la feuille c'est bon elle s'appelle pas feuil2 mais ca j'avais déja compris (quel progrès...)
-en fait ma feuil2 (puisqu'on l'appelle comme ca) n'est pas destinée à etre changée donc le fait de mettre la macro sur celle ci ne sert pas trop... (enfin je crois)
-je travaille avec xl2000 mais peut etre pas les destinataires du document (c'est de la formation à distance et les gens ont p'tet pas des super bécanes)
-Mon SI est mis mais s'il faut pas travailler sur Feuil2 mon code devient inutile... (du - sur cette feuille)
-et puis j'ai tjrs mon "erreur d'execution 9" (qui d'ailleurs se faisait aussi voir quand j'executais la macro sur Feuil2)

en résumé, j'ai mon code qui marche pas dans ma Feuil1 (mais je ne perds pas espoir...) et c'est tout...

je vais continuer à chercher ô déesse flamboyante de la programmation...
ps: si tu veux des conseils en BD, là j'suis super balèze...
 
Re moi,

Peut-être il serait plus simple de joindre le fichier... J'aurai une vision plus claire de la situation
Et pour la feuil2 C'est bien sûr la macro n'a pas démarré

Pour ce qui est des conseils quand j'ai besoin je fais appel au FORUM alors viens régulièrement aidé ce qui en ont besoin de tes compétences balèzes
En tout cas merci de ton attention mais ici la priorité est l'entraide pour TOUS

@+
Valérie (que de compliments... je rougis )
 
J'AI TROUVE!!!!!!!!!!!!!!!!!!!!!!!

s'était le nom de ma feuille qu'il prenait pas...
elle s'appelait id_actions
c'est le "_" qu'il a pas aimé???

merci tout plein quand même. je vais pouvoir frimer en boite de nuit maintenant...
longue vie, prosperité, et amour à toi...
ange merveilleux descendu du ciel pour m'aider dans mon dur labeur.

bon, ca fait un peu superlatif mais je suis bien content que ca marche en + je vais poucoir dormir sur mes 2 orteils

a+
 
merci.
tu m'as retiré une fière chandèle du pied.
j'ai évoqué mes connaissances en bd, je veux bien les partager mais je suis pas sur que ce soit le but de ce forum...
mais si j'peux etre utile...
a bientot
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
453
Retour