Bouton de commande pour actualisation tcd sur une feuille protégée [Résolu]

Signaler
-
cs_Le Pivert
Messages postés
6435
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
16 décembre 2019
-
Bonjour à tous.
Je mets en place un programme avec plusieurs classeurs, dont certains comportent des tableaux dinamyques croisés.
Je voudrais créer un bouton de commande sur lz classeur Menu, qui actualise automatiquement tous les TCD, sachant que les classeurs sont protégés par mot de passe.

Merci d'avance

11 réponses

Messages postés
50554
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
15 décembre 2019
11468
Bonjour.

Avant d'aller plus loin, et pour être sûrs qu'on parle bien des mêmes choses, il s'agit bien de plusieurs classeurs, c'est-à-dire des fichiers différents ?

Et tu veux un bouton dans le fichier "Menu" :
- qui ira chercher dans le disque dur les différents classeurs concernés, dans leurs répertoires,
- qui saura quel est le mot de passe de chacun de ces fichiers,
- qui va donc enlever la protection de chaque classeur,
- qui va lancer l'actualisation de tous les TCD contenus dans ces fichiers dé-protégés ?

Il faudra trouver un très grand spécialiste de la programmation en VBA pour arriver à écrire une macro capable de faire tout cela !
Bonjour,
Désolé, en fait, il s'agit de plusieurs feuilles d'un même classeur Excel qui comporte environs 9 TCD que je voudrais actualiser via un bouton de commande.

J'espère avoir été plus précis et plus clair
Encore Merci !
Messages postés
6435
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
16 décembre 2019
423
Bonjour,

Tu peux toujours te servir de l'enregistreur de macro pour avoir le code en vba:

d'abord tu enregistres la déprotection de la feuille ainsi que la protection

cette macro te servira à déprotéger la feuille avant de mettre ta macro qui actualise automatiquement le TCD et ensuite la protéger de nouveau.

Ensuite tu enregistres l'actualisation automatiquement du TCD.

La macro ainsi obtenu tu la mets entre la déprotection et la protection de la feuille

Ce qui donne:

Sub actualiser()
'déprotection
'actualisation TCD
'protection
End Sub


Tu fais de même pour tous tes TCD

Voilà
Bonsoir,
La question pour moi est de mettre en place un bouton de commande permettant de faire l'actualisation en temps voulut, pour que ce soit assez simple pour les utilisateurs.
En outre dans mes recherches j'ai trouvé ceci qui fonctionne lorsqu'on lance la macro, mais je veux l'associer à un bouton de commande :

Sub RefreshAll()
''ActualisationTCD office 2013
Dim xpt As PivotTable
With ActiveSheet
.Protect usetintetfaceonly :=Trie
For Each xpt In .PivotTable
xpt. RefreshTable
N'est xpt
End with
End sub


Peux tu m'aider dans ce sens ?
Merci d'avance !
cs_Le Pivert
Messages postés
6435
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
16 décembre 2019
423
Re bonsoir,
L'autre chose est que je suis novice en VBA, donc je ne sais pas comment vas enregistrer une macro......!!!

Et même le code que je t'ai envoyé ne fonctionne que lorsque les feuilles ne sont pas protégées.
cs_Le Pivert
Messages postés
6435
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
16 décembre 2019
423
Merci encore pour les explications l'enregistrement de macros, je vais essayer demain matin et vous dire la suite.

Bonne nuit à vous !
Mille merci,
Grâce aux explications du lien je suis parvenu à affecter un bouton de contrôle à la macro permettant d'actualiser les TCD DDE mers feuilles protégées.
Question RÉSOLUE !
cs_Le Pivert
Messages postés
6435
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
16 décembre 2019
423
C'est très bien. Penser à cliquer sur résolu (roue crantée en haut à droite)

@+ Le Pivert