Cocher case sur une feuille et faire apparaître lignes sur autre feuille Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
M
Manon
Nouveau venu
Nouveau venu
Messages : 3
Inscrit le : 8 décembre 2017
Version d'Excel : 2010

Message par Manon » 8 décembre 2017, 14:51

Bonjour à tou(te)s !

Après plusieurs recherches sur différents forum, je n'ai pas trouvé de solution à mon problème... J'ai donc besoin de votre aide !
(à savoir que je n'y connais aaabsolument rien en marco ! :oops: )

Pour faire simple, un fichier excel a deux feuilles :
  • une première, avec des cases à cochées ;
    une seconde, comportant de nombreuses lignes.
Je souhaiterais qu'un utilisateur puisse cocher différentes cases sur la première feuille, puis se rendre sur la seconde, qui aurait été modifiée de façon automatique selon les cases sélectionnées précédemment par l'utilisateur. Sur cette seconde feuille, seules les lignes correspondant aux cases sélectionnées apparaîtraient.

Pour l'instant, j'ai pu lier une macro à ma case ( en feuille 1) : cocher et décocher cette case permet d'afficher ou de cacher des lignes... sur la feuille 1.
Voici ma macro :

Sub MACRO()
If Range("D5").Value = True Then
'Si la case D5, Gaz infla, est cochée, alors
Rows("6:8").EntireRow.Hidden = False
'Les lignes 5 à 8 apparaîssent
Else: Rows("6:8").EntireRow.Hidden = True
'Sinon (si la case n'est pas cochée), alors les lignes 5 à 8 sont cachées
End If
End Sub

Pour plus de clarté, je vous joins une version allégée du fichier !

Objectifs :
- je souhaiterais que les lignes apparaissant / se cachant soient des lignes de la feuille n°2.
- le fichier complet comporte une vingtaine de cases en feuille n°1 et 80 lignes en feuilles n°2... Il faudrait par conséquent que cocher/décocher une case n'ouvre pas automatiquement la feuille n°2, mais que l'utilisateur puisse rester sur la feuille n°1 pour cocher tranquillement ses cases, puis se rendre de lui même en feuille n°2 pour visualiser uniquement les lignes qui le concerne.


Je crois qu'il y a une histoire de "sheets", de point d'exclamation ou je ne sais quoi... Bref, je suis perdue ! :bof:

Je vous remercie par avance pour votre aide !
OUTIL 1.xls
(157.5 Kio) Téléchargé 13 fois
Avatar du membre
vbMsgBoxHelpButton
Membre fidèle
Membre fidèle
Messages : 288
Appréciations reçues : 15
Inscrit le : 7 décembre 2017
Version d'Excel : 2007 FR

Message par vbMsgBoxHelpButton » 8 décembre 2017, 17:52

Bonsoir,
Attention ! Veuillez utiliser les balises pour une meilleur présentation... Ce sont les boutons au dessus de la zone de saisie de texte.
Mon essai :
Sub Macro()
    If Range("D5").Value = True Then
        'Si la case D5, Gaz infla, est cochée, alors
        Sheets("RUBRIQUES DC").Rows("6:8").EntireRow.Hidden = False
        'Les lignes 5 à 8 apparaîssent DANS LA FEUILLE ESSAI RUBRIQUE
    Else
        Sheets("RUBRIQUES DC").Rows("6:8").EntireRow.Hidden = True
        'Sinon (si la case n'est pas cochée), alors les lignes 5 à 8 sont cachées
    End If
End Sub
vbMBHB
vbMsgBoxHelpButton ou bien 16384 pour les intimes :lole:
Je pars pour un très long voyage, donc aujourd'hui le 08/02/2018, je vous dis "au revoir" (°v°)°
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 3'523
Appréciations reçues : 241
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019

Message par 78chris » 8 décembre 2017, 18:00

Bonjour

Le plus simple est de
  • créer des plages nommées correspondant aux types de substances à afficher/masquer
  • créer des case à cocher en activex plutôt qu'en objet de formulaire
  • utiliser la valeur booléenne de case à cocher, nommée de façon similaire à la zone correspondante pour gérer l'affichage.
J'ai terminé les noms avec un caractère particulier (ici _) pour repérer ces noms.
Code dans le module de la feuille RUBRIQUES DC. Voir noms dans le gestionnaire de noms et dans les propriétés des cases à cocher

Pourquoi utiliser l'ancien format xls alors que tu as 2010 ?
Masquer_Afficher.xls
(128.5 Kio) Téléchargé 15 fois
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
M
Manon
Nouveau venu
Nouveau venu
Messages : 3
Inscrit le : 8 décembre 2017
Version d'Excel : 2010

Message par Manon » 8 décembre 2017, 21:24

Bonsoir,

Un grand merci pour votre retour si complet ! Je n'en attendais pas tant, et j'avoue ne pas y comprendre grand chose...! (si vous voulez appréhender mon niveau, dites vous quand même que j'ignore comment "créer une plage"... Rhem. J'ai honte... A chacun son domaine d'expertise ! :wink: )

Je vais partir sur l'utilisation du "Sheets("RUBRIQUES DC")." sans trop modifier mon fichier...
J'ignore la différence entre un objet en formulaire et un activex...
Enfin, en ce qui concerne l'utilisation de l'ancien format xls sur excel 2010, et bien... :scritch: Je ne sais pas ! Je n'y ai jamais réfléchis : Je travaille sur un ordinateur professionnel et n'y ai changé aucun paramètre. Peut être une histoire de compatibilité des fichiers mis en réseau multisite ...?
M
Manon
Nouveau venu
Nouveau venu
Messages : 3
Inscrit le : 8 décembre 2017
Version d'Excel : 2010

Message par Manon » 8 décembre 2017, 21:25

Bonsoir !

C'est parfait merci beaucoup ! :bien:
Avatar du membre
vbMsgBoxHelpButton
Membre fidèle
Membre fidèle
Messages : 288
Appréciations reçues : 15
Inscrit le : 7 décembre 2017
Version d'Excel : 2007 FR

Message par vbMsgBoxHelpButton » 8 décembre 2017, 21:42

Merci
vbMBHB
vbMsgBoxHelpButton ou bien 16384 pour les intimes :lole:
Je pars pour un très long voyage, donc aujourd'hui le 08/02/2018, je vous dis "au revoir" (°v°)°
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 3'523
Appréciations reçues : 241
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019

Message par 78chris » 9 décembre 2017, 09:52

Bonjour
Manon a écrit :
8 décembre 2017, 21:24
j'avoue ne pas y comprendre grand chose...! (si vous voulez appréhender mon niveau, dites vous quand même que j'ignore comment "créer une plage"... Rhem. J'ai honte... A chacun son domaine d'expertise !
Les plages nommées permettent de rendre les choses évolutives : le jour où on ajoute des lignes d'une catégorie, on modifie juste la définition de la plage nommée sans avoir à modifier le code.

Outre le code, la superposition de cases, de cellules liées complique énormément l'évolutivité du classeur. Et en entreprise tout évolue...

Pour le format : nous sommes passés en xlsx depuis 10 ans.
Garder le format xls, vous prive de toutes les améliorations faites depuis ces 10 années sur Excel et elles sont nombreuses...

Quand au niveau : il ne tient qu'à toi de l'améliorer. On a tous commencé un jour à partir de 0...
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message