Benjam'
-
25 mars 2015 à 15:37
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
27 mars 2015 à 13:03
Bonjour,
Je suis actuellement en train de faire un programme à l'intention de plusieurs "néophytes" d'exel.
L'idée, c'est que mon userform soit une console qui permette de selectionner des choix, qui appeleront des filtres automatiques qui vont déterminer des champs du tcd (ou pas).
Il y a 3 alternatives.
Une d'elles concerne le secteur (voici un exemple non exhaustif):
Sub OPEcpcdirect()
'cpc et encadrement'
With Worksheets("TCD").PivotTables("Tableau croisé dynamique1").PivotFields( _ "2- Libellé Domaine 2014 niveau 2") .PivotItems("ENCADREMENT").Visible = True .PivotItems("CPC NORMANDIE").Visible = True .PivotItems("ACR BASSE NORMANDIE").Visible = False End With End Sub
Un autre choix concerne la date (ici, année et mois):
'TCD par année et mois' Private Sub TCDPeriodeAnnée_Mois() With Worksheets("TCD").PivotTables("Tableau croisé dynamique1").PivotFields("Ex.") .Orientation = xlColumnField .Position = 1 End With With Worksheets("TCD").PivotTables("Tableau croisé dynamique1").PivotFields("Ex.") .PivotItems("2013").Visible = True .PivotItems("2015").Visible = True .PivotItems("2015").Visible = True End With Range("E25").Select
With Worksheets("TCD").PivotTables("Tableau croisé dynamique1").PivotFields("Pér") .Orientation = xlColumnField .Position = 2 End With
Worksheets("TCD").PivotTables("Tableau croisé dynamique1").PivotFields("Ex."). _ PivotItems("2015").ShowDetail = True End Sub
La derniere alternative porte sur un type d'activité (ici "tempete"):
Sub tempete()
With Worksheets("TCD").PivotTables("Tableau croisé dynamique1").PivotFields( _ "Dépenses par Tempête") .Orientation = xlRowField
End With
End Sub
Mon programme marche, il n'y a pas de probleme mais:
J'aimerais bien pouvoir sauvegarder les choix des utilisateurs pour pouvoir leur reproposer plus tard, sans qu'ils aient à repasser par la console en réindiquant leurs préférences, à chaque fois.
malheureusement,je n'arrive pas à sauvegarder la mise en forme des champs et des filtres du TCD
1- Est-ce possible?
2- Si oui, avez vous des suggestions? Je suis perdu
3-Dites moi si je ne suis pas assez clair
Merci d'avance, je suis moi-même un néophyte de VBA exel
A voir également:
Sauvegarder la valeur des champs et des filtres d'un TCD
Bonjour,
Si j'ai bien compris, chaque utilisateur différent peut avoir ses préférences personnelles.
Je ne vois dans ce cas pas d'autres solutions que celle de l'écriture de ces préférences sur disque dur (un fichier texte par utilisateur ou une base de données) puis la lecture de ces données et leur application à chaque session, en fonction de l'utilisateur.
Il s'agit là d'une opération simple.
Edit : Si tu choisis de garder ces données dans un fichier texte, tu peux également n'utiliser qu'un seul fichier, à écrire et lire dans ce cas à l'aide d'une structure (variable d'un type personnalisé).
Dans un cas (fichier texte) ou l'autre (base de données) :
- soit tu sais écrire puis lire un fichier texte ou exploiter une base de données ===>> et tu as alors ta réponse
- soit tu ne le sais pas ===>> et ton problème technique n'est alors plus le but final que tu exposes (conservation des valeurs), mais plus général (quel que soit le motif de la conservation) ===>> et dans ce cas ===>> une discussion à ce propos, sans même parler de ce que tu as à conserver puis exploiter
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Bonjour, et merci pour ta réponse. Tu as bien compris ce que je veux faire. Il n'y a donc pas moyen de sauvegarder la mise en forme des champs et des filtres d'un TCD?
Y en a t'il un pour récupérer le nom d'un champ actif à partir de mon TCD "mis en forme"
- je crois t'avoir répondu en ce qui concerne le premier point
- le second point a peut-être quelque chose à voir avec ton projet, mais rien avec la question posée par la discussion que tu as ouverte ! (c'est encore autre chose ... une autre difficulté technique ... !)
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend