fonction perso masquer afficher

L

lemaire

Guest
Bonjour,
Quelqu'un peut-il m'expliquer comment créer une fonction personnalisée dans Excel permettant de masquer/afficher des lignes et/ou colonnes en cliquant sur la cellule contenant la-dite fonction ?

Merci
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Lemaire, bonjour lr forum,

Une fonction ! J'en suis bien incapable... Mais en VBA c'est faisable. Ça t'interesse quand même ou tu veux impérativement une fonction ? Si Oui il faut que tu précises les lignes et/ou colonnes à masquer/afficher et la cellule de référence.
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour lemaire, Robert, le forum

en fonction, c'est infaisable, il faut utiliser une procédure. De toute façon une fonction ne serait pas recalculée avec une simple sélection de la cellule.
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = Range('A1').Address Then
Rows('4:5').Hidden = Not (Rows(5).Hidden)
End If
End Sub
ce code placé dans le module de la feuille masquera/affichera les lignes 4 et 5 lors d'une sélection de A1

Cordialement, A+
 
L

Lemaire

Guest
Bonjour Robert,

En fait j'ai bien trouvé une macro déjà, mais le problème est que lorsque j'ajoute une nouvelle entrée comportant des sous entrées sur ma feuille Excel, il me faut aller spécifier cela dans la macro. Pas pratique et risque d'erreurs. De plus, ça n'a pas l'air très stable !

Pour info voilà à quoi cela ressemble :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
Select Case Target.Row
Case 3: Cancel = True: Rows('4:8').EntireRow.Hidden = Not Rows('4:8').EntireRow.Hidden
Case 26: Cancel = True: Rows('27:28').EntireRow.Hidden = Not Rows('27:28').EntireRow.Hidden
End Select
End Sub

Mon idée est simplement de créer une arborescence sur ma feuille à l'image de l'explorateur Windows, en ayant la souplesse d'ajouter ou supprimer des entrées.
Je me servais de Keynote, un exellent freeware, malheureusement celui-ci comporte certaines limitations et son dévellopement est interrompu ...

Sinon, lorsque je dis ligne et/ou colonne, je suppose simplement que si l'on peut le faire avec des lignes alors il sera possible de le faire avec des colonnes. Le primordial pour moi étant de le faire avec des lignes.

Merci.
 
L

Lemaire

Guest
Bonjour Yeahou,

Merci pour la réponse, malheureusement cela reste trop délicat à gérer. Voir à ce propos ma réponse à Robert.

En effet ma liste Excel comportera rapidement plus de 2000 entrées dont certaines avec 2, 3 ou 6 sous-entrées !

Donc lorsque je parle de fonction, c'est l'idée de souplesse qu'il faut retenir. Par exemple, j'entre ma donnée en A1 puis mes 'sous-données' en B2, B3 et B4. Il me faut alors spécifier de la façon la plus simple possible que lorsque je clic ou double-clic en A1 (ou bien au pire en B1 pourquoi pas) grace à un bouton, un lien hypertext ou autre, que l'on bascule en masquage/affichage des lignes 2, 3 et 4.

Voilà, j'ai pas mal cherché dans des ouvrages, forum ou sites consacré à Excel mais rien de ce style. Cela m'étonne que personne n'est ressenti ce besoins qui offrirait la souplesse de l'arborescence non seulement pour gérer des listes mais aussi pour organiser avec une grande souplesse et lisibilité des feuilles de calcul complexes.

Merci
 

Discussions similaires

Réponses
2
Affichages
185

Statistiques des forums

Discussions
312 347
Messages
2 087 501
Membres
103 563
dernier inscrit
samyezzehar