Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Création d'un bouton macro pour masquer/et/ou/afficher les lignes vides dans un planning excel

KLG56

XLDnaute Nouveau
Bonjour à tous,

Je cherche, je cherche... je ne trouve pas!
Je voudrais créer un bouton dans une feuille excel afin de pouvoir choisir d'afficher ou non les lignes vides d'un planning.
Si la colonne B d'une ligne est vide ou = à 0 alors la ligne entière peut être masquée.
Applicable sur une plage allant de la ligne 16 à la ligne 190

Merci d'avance de votre aide car je désespère et j'ai l'impression de perdre mon temps
 

KLG56

XLDnaute Nouveau
Bonjour pierrejean et merci pour cette réponse express!

Ca me semble vraiment pas mal mais je n'arrive pas à enregistrer la macro pour la tester telle quelle dans mon ficher de travail... à recréer le bouton, etc... Je ne suis pas du tout expert et je crois que je n'ai pas la bonne méthodologie...

Si vous pouvez m'aiguiller!

Merci d'avance
 

KLG56

XLDnaute Nouveau
Merci PierreJean, mais j ne peux pas car j'ai une dizaine d'onglets avec des formules entre chacuns. (un onglet par ligne de production - une dizaine, des onglets de données diverses - un tableau de bord reprenant l'ensemble des infos) donc ça me parait très compliqué de le faire comme ça!

Je vais rééssayer mais ça me parait difficile
 

KLG56

XLDnaute Nouveau
Bonjour pierrejean,

Je ne parviens pas à dupliquer le modèle que tu m'as transmis en PJ. Peux-tu me fournir la méthodo pas à pas pour recréér cette macro pas à pas?
Par avance, merci de ton support
 

KLG56

XLDnaute Nouveau
Je parviens désormais à recréer la macro dans mon fichier mais je ne peux que masquer les lignes vides et je ne parviens pas à la faire fonctionner pour démasquer. Je dois sélectionner les lignes et faire afficher après un clique droit.

Autre question, comment faire pour l'appliquer à plusieurs onglet pour que tout s'éxécute simultanément?

Voilà ce que j'ai:

Private Sub Bouton1_Cliquer()
Call masque
End Sub
Sub masque()
Application.ScreenUpdating = False
Rows.Hidden = False
For n = 16 To 190
If Range("B" & n) = "" Or Range("B" & n) = 0 Then
Rows(n).Hidden = True
End If
Next
Application.ScreenUpdating = True
End Sub
Sub demasquer()
Rows.Hidden = False
End Sub
 

pierrejean

XLDnaute Barbatruc
Re

Ouvre les 2 fichiers
Dans le mien va dans l’éditeur Vba (Alt + F11) ,copie le contenu du Module1 et colle le dans ton fichier apres avoir insere un module
Fais de meme avec le module de la feuille (a copier dans le module de ta feuille)
 

Laurent81

XLDnaute Nouveau
Bonjour Pierrejean,
J'ai appliqué ta macro dans une page d'analytique de compta pour masquer les lignes d'après un critère en colonne A qui sélectionne les lignes à afficher ou masquer (celles qui n'ont aucune recette ou dépense) en cliquant sur un bouton de formulaire.
J'ai trois questions:
- mon tableau comporte 196 lignes et 46 colonnes : le masquage des lignes dure plus d'une minute, y a t-il moyen de faire plus vite ?
- j'ai créé un bouton de formulaire (au niveau de D1) pour activer la macro mais ça marche aussi avec un bouton activeX : lequel faut-il utiliser ?
- je pensais qu'en recliquant sur le bouton ça pouvait activer la macro "demasquer", or ce n'est pas le cas, le seul moyen est-il alors de mettre un deuxième bouton (ou sélectionner le tableau et faire afficher les lignes par un clic droit) ?

Pour l'instant j'ai contourné en faisant une macro qui filtre la colonne 1 ............
 

Pièces jointes

  • fichier analytique-1.xlsm
    74.2 KB · Affichages: 16

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…