Bonjour,
J'ai tenté de récupérer des éléments de réponses dans le forum mais je n'arrive pas à l'adapter pour l'instant à ma problématique.
Dans le même fichier, j'ai de multiple onglet (plusieurs onglets de paramétrage ou de liste, plusieurs bases de données, plusieurs TCD avec segment...).
Dans l'onglet "Selections", l'utilisateur saisi ou sélectionne un choix (case E4)
J'ai réussi avec cette valeur, d'ajuster les filtres de 2 onglets avec des bases de données pour n'afficher que le choix.
J'ai aussi réussi à ajuster le filtre d'un TCD mais cela ne modifie pas l'information sélectionnée dans le segment du TCD "Segment_CHANNEL1" avec le code ci-dessous
Par contre, j'aurais préféré modifier le choix dans le segment du TCD correspondant afin que cette sélection soit visible dans le segment et affectée au TCD.
J'ai tenté différents codes pour modifier le choix du segment comme celui ci-dessous
et d'autres tests tentés sans succés
Malgré des tests, je n'arrive pas à résoudre ce point. (je ne suis pas expérimenté sur la programmation VBA)
pour information les propriétés du segment du TCD "Segment_CHANNEL1" (nom à utiliser dans les formules) (nom de la source : CHANNEL) (nom : "CHANNEL 1")
A priori avec l'enregistreur de macro, il faudrait lister chaque choix du segment et indiquer "True" ou "False"... mais cela me semble lourd (certaines sélections ont 300 éléments....
Merci d'avance pour vos lumières
Scoub
----------
PS :
En fait, j'ai tenté d'abord avec un critère pour tenter de comprendre comme le programmer.
Mais j'aurais d'autres sélections à paramétrer (plusieurs champs de sélection sur différents onglets).
Par la suite je voudrais faire un export juste de la partie sélectionnée de la base de donnée et du TCD sans garder les autres information afin de pouvoir diffuser suivant les interlocuteurs les données correspondant sans qu'ils puissent consulter les autres infos.
En espérant que vous pourrez m'aider et que cela me facilitera la suite du travail pour préparer des Tableaux de bord d'indicateurs.
Merci d'avance,
Prenez soin de vous,
Scoub
J'ai tenté de récupérer des éléments de réponses dans le forum mais je n'arrive pas à l'adapter pour l'instant à ma problématique.
Dans le même fichier, j'ai de multiple onglet (plusieurs onglets de paramétrage ou de liste, plusieurs bases de données, plusieurs TCD avec segment...).
Dans l'onglet "Selections", l'utilisateur saisi ou sélectionne un choix (case E4)
J'ai réussi avec cette valeur, d'ajuster les filtres de 2 onglets avec des bases de données pour n'afficher que le choix.
Code:
Sheets("Allocation Vision Canal").Activate
Selection.AutoFilter _
Field:=8, Criteria1:=Worksheets("Selections").Range("E4").Value, _
Operator:=xlAnd
J'ai aussi réussi à ajuster le filtre d'un TCD mais cela ne modifie pas l'information sélectionnée dans le segment du TCD "Segment_CHANNEL1" avec le code ci-dessous
Code:
.PivotTables("Tableau croisé dynamique1").PivotFields("CHANNEL").PivotFilters.Add _
Type:=xlCaptionEquals, Value1:=Worksheets("Selections").Range("E4").Value
Par contre, j'aurais préféré modifier le choix dans le segment du TCD correspondant afin que cette sélection soit visible dans le segment et affectée au TCD.
J'ai tenté différents codes pour modifier le choix du segment comme celui ci-dessous
VB:
Sheets("TCD Vision Canal").Activate
VB:
.SlicerCaches("Segment_CHANNEL1").VisibleSlicerItemsList(1) = Worksheets("Selections").Range("E4").Value
et d'autres tests tentés sans succés
Code:
ActiveWorkbook.SlicerCaches("Segment_CHANNEL1").VisibleSlicerItemsList = Array([Segment_CHANNEL1].[CHANNEL].[choixchannel])
ActiveWorkbook.SlicerCaches("Segment_CHANNEL1").VisibleSlicerItemsList = Array("[Tableau croisé dynamique1].[CHANNEL].&[choixchannel]")
ActiveWorkbook.SlicerCaches("Segment_CHANNEL1").VisibleSlicerItemsList = "[Tableau croisé dynamique1].[CHANNEL].&[choixchannel]"
ActiveWorkbook.Sheet("TCD Vision Canal").Caches("Segment_CHANNEL1").VisibleSlicerItemsList ("choixchannel")
Malgré des tests, je n'arrive pas à résoudre ce point. (je ne suis pas expérimenté sur la programmation VBA)
pour information les propriétés du segment du TCD "Segment_CHANNEL1" (nom à utiliser dans les formules) (nom de la source : CHANNEL) (nom : "CHANNEL 1")
A priori avec l'enregistreur de macro, il faudrait lister chaque choix du segment et indiquer "True" ou "False"... mais cela me semble lourd (certaines sélections ont 300 éléments....
Merci d'avance pour vos lumières
Scoub
----------
PS :
En fait, j'ai tenté d'abord avec un critère pour tenter de comprendre comme le programmer.
Mais j'aurais d'autres sélections à paramétrer (plusieurs champs de sélection sur différents onglets).
Par la suite je voudrais faire un export juste de la partie sélectionnée de la base de donnée et du TCD sans garder les autres information afin de pouvoir diffuser suivant les interlocuteurs les données correspondant sans qu'ils puissent consulter les autres infos.
En espérant que vous pourrez m'aider et que cela me facilitera la suite du travail pour préparer des Tableaux de bord d'indicateurs.
Merci d'avance,
Prenez soin de vous,
Scoub
Dernière édition: