• Initiateur de la discussion Initiateur de la discussion rafou29
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

rafou29

XLDnaute Junior
Bonjour,

Quelqu'un pourrait-il me donner le code qui permet d'insérer la colonne de notre choix dans le "Filter Range" d'un PivotTable ?

A savoir que mon PivotTable se situe en "Sheet3", les données sont en "Sheet1" et je souhaiterais pouvoir filtrer les données que j'y insère en utilisant la colonne "Ligne" en G2 de ma "Sheet1".

Cela doit me permettre d'améliorer l'affichage de mon histogramme.

Voici mon code actuel :

PHP:
Dim plage, maplage

Set plage = Sheets("Sheet1").Range("A1").CurrentRegion

Application.ScreenUpdating = False
Sheets("Sheet1").Activate
Set maplage = Range("A1").CurrentRegion
maplage.Name = "TCD"
Sheets("Sheet3").Activate

    With ActiveSheet
        .PivotTableWizard SourceType:=xlDatabase, SourceData:="TCD", TableDestination:="R1C1", TableName:="TCD1"
        .PivotTables("TCD1").SmallGrid = False
        .PivotTables("TCD1").AddFields RowFields:="Sc", ColumnFields:=Array("Arrêt")
        .PivotTables("TCD1").PivotFields("%").Orientation = xlDataField
    End With
    With Application
        .CommandBars("PivotTable").visible = False
        .ScreenUpdating = False
    End With

    Charts.Add
    ActiveChart.ChartType = xlColumnStacked
    ActiveChart.SetSourceData Source:=Sheets("Sheet3").Range("A3:E6"), PlotBy:= _
    xlColumns
    ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet3"
    ActiveChart.SeriesCollection(1).Select
    ActiveChart.ChartArea.Select
    With ActiveChart
        .HasTitle = True
        .ChartTitle.Characters.Text = "Arrêt"
        .Axes(xlCategory, xlPrimary).HasTitle = False
        .Axes(xlValue, xlPrimary).HasTitle = True
        .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "%"
    End With
    ActiveChart.HasLegend = True
    ActiveChart.HasDataTable = False

    ActiveChart.Axes(xlCategory).Select
    With ActiveChart.Axes(xlCategory)
        .CrossesAt = 1
        .TickLabelSpacing = 1
        .TickMarkSpacing = 1
        .AxisBetweenCategories = True
        .ReversePlotOrder = False
    End With


Merci de votre attention !
 
Dernière édition:
Re : Filtrer PivotTable

Personne n'a une petite idée ?

Selon moi le code que je souhaite obtenir doit ressembler à quelque chose comme cela :

PHP:
.PivotTables("TCD1").PivotFields("Ligne") = xlFilterField

Maintenant, une version qui fonctionne serait mieux 😀
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
520
Réponses
0
Affichages
459
Réponses
9
Affichages
2 K
Réponses
0
Affichages
789
Retour