Posez votre question Signaler

Excel TCD masquer les elements d un champ

patzap - Dernière réponse le 30 mai 2008 à 11:51
Bonjour,
J'ai une base de données avec des informations pour tous les services.
J'ai créé 1 TCD me permettant de synthétiser les informations par service.
Dans la zone "champ de page" j'ai mis le nom du service.
Ensuite dans "Afficher les pages" j'ai mis toutes puis OK.
Il crée 1 onglet par service.
Mon problème : je veux envoyer le tableau synthétique à chaque responsable de service sans que celui ci puisse consulter les données des autres services. Je veux par contre garder le bénéfice du TCD afin que chaque responsable puisse consulter le détail de chaque ligne.
Le TCD ainsi créé garde la ligne "champ de page" sur laquelle il suffit de cliquer pour avoir les données des autres services.
J'ai réussi à "masquer" les données des autres services en faisant click droit / paramètres de champ / masquer les champs. Mais 1 utilisateur averti saura qu'il lui suffit de refaire la même chose pour annuler ma sélection.
J'ai essayé d'afficher les données des autres services puis de les supprimer mais on ne peut rien supprimer dans 1 TCD.
Pour le moment, j'ai 2 solutions de contournement mais qui sont longues à mettre en oeuvre car j'ai beaucoup de services (env 25) : 1) j'ai extrait de la base de données les seuls renseignements concernant le service concerné et ai refait 1 TCD dans 1 fichier séparé.
2) j'ai fait copier / coller en valeur pour mon TCD initial puis sur 1 autre onglet, j'ai copié la base de données correspondante.
Y a-t-i, à votre connaissance, une solution pour masquer les information des autres services ou pour automatiser les opérations répétitives que j'ai à faire sur chaque fichier ?
Lire la suite 
Réponse
+0
moins plus
Bonjour,
ce que tu peux faire, c'est verrouiller la cellule en champ de page qui contient le service, puis protéger la feuille.
Si tu as une version d'excel suffisamment récente, tu peux autoriser l'usage du tableau croisé dynamique malgré la protection de la feuille.
Si nécessaire, ces opérations de verrouillage / protection peuvent être contenues dans une macro simple.
A suivre...
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
Bonjour,

Merci pour ton aide.

J'avais aussi essayé. Mais celà bloque le TCD (J'utilise Excel 2003). Connais-tu 1 moyen pour autoriser l'usage du TCD après protection avec cette version ?

Par ailleurs, je commence à maitriser pas mal Excel, mais j'avoue que je ne connais pas du tout les macros... est-ce si simple que ça ???
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
Désolé de ne pas pouvoir t'aider, alors. Excel 2007 permet certaines opérations sur une feuille protégée, mais pas la version 2003, apparemment.
Quant aux macros, c'est facile de faire des choses simples.
Le mieux, pour commencer, est de se laisser guider :
Outils/Macros/Enregistrer une nouvelle macro
puis tu exécutes sur Excel toutes les tâches que tu veux faire, puis clique sur Arrêter l'enregistrement.
Toutes tes actions ont été enregistrées en VBA et tu peux les répéter en relançant la macro.
Si nécessaire, tu peux venir modifier manuellement des éléments du code.
Tu pourrais ainsi automatiser les tâches suivantes :
- supprimer de ta base de données complète les lignes qui ne concernent pas le service donné, puis actualiser le tcd, puis enregister sous...
- ou bien un bouton qui permet de Déprotéger la feuille, afficher le détail d'une ligne de tcd (à partir de la cellule sélectionnée), et re-Protéger la feuille.
A suivre...
patzap- 26 mai 2008 à 17:09
intéressant !

une question de débutante : les macros que je crée sont-elle dans Excel ou liées à une feuille en particulier ?

En effet, ça m'intéresse si je dois faire les manip 1 fois et automatiser la création des autres fichiers ... ça sera toujours ça...
Répondre
Ajouter un commentaire
Réponse
+0
moins plus
Bonsoir,
Une macro (= une procédure) est "hébergée" dans un classeur Excel. Ce classeur doit être ouvert pour pouvoir utiliser la macro (mais ce classeur peut très bien être masqué).
A partir de là, la procédure peut agir sur n'importe quel classeur ouvert, il suffit de lui préciser lequel.
Dans ton cas, ta (ou tes) procédure(s) pourrait être hébergée dans ton classeur initial (données complètes) ou bien dans un classeur spécifique que tu ouvrirais le temps de faire tes manip', et pourrait créer à la chaîne les 25 classeurs contenant des données partielles.
Est-ce que ça répond à ta question ?

Remarque :
si chacun de tes destinataires est bien identifié par son username, tu pourrais éventuellemet restreindre l'accès à chacun. Par exemple, seuls Monsieur A et Madame B peuvent sélectionner le service X en champ de page. Si un autre le sélectionne, il aurait un message d'erreur. C'est de la bidouille (qui pourrait de toute façon être contournée par un utilisateur qui voudrait absolument la contourner), mais ça peut marcher avec une macro assez simple.
A suivre...
patzap- 30 mai 2008 à 11:14
Merci Ivan-Hoe pour ces conseils.

Je crois qu'il ne me reste plus qu'une chose à faire ... Me lancer dans les macro commandes ...
Répondre
Ajouter un commentaire
Réponse
+0
moins plus
A bientôt sur CCM, alors !
Ajouter un commentaire
Ce document intitulé «  Excel TCD masquer les elements d un champ  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.