Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Tableau croisé après filtre

2 réponses
Avatar
Bruno RCSC
Bonjour,

Sous excel 2002.

Comment doit on procéder pour créer un TCD qui prenne le résultat d'un
filtre ?

J'utilise le code suivant :
ActiveWorkbook.Names.Add Name:="database", RefersTo:=Range(Range("A2"),
Range("P65536").End(xlUp))
Selection.AutoFilter Field:=10, Criteria1:="=A*", Operator:=xlAnd
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"database").CreatePivotTable TableDestination:="" _
, TableName:="Tableau croisé dynamique1"

Le résultat du tableau croisé comprend toutes les lignes de database, je
voudrais obtenir un résultat qu'à partir des lignes visibles.

Merci pour votre aide.

BH.

2 réponses

Avatar
JB
Bonjour,

Il faut copier les lignes filtrées dans un autre tableau et créer le
TCD sur ce tableau

http://boisgontierjacques.free.fr/fichiers/Filtre/FiltreAutoTCD.xls

Sub Extrait()
nf = "BDExtrait"
Sheets(nf).Cells.ClearContents
Range("_FilterDataBase").SpecialCells(xlCellTypeVisible).Copy
Sheets(nf).[A1]
Sheets("TCD").PivotTables("Tableau croisé
dynamique1").PivotCache.Refresh
Calculate
End Sub

JB
http://boisgontierjacques.free.fr/


On 22 mar, 12:53, "Bruno RCSC" wrote:
Bonjour,

Sous excel 2002.

Comment doit on procéder pour créer un TCD qui prenne le résultat d' un
filtre ?

J'utilise le code suivant :
ActiveWorkbook.Names.Add Name:="database", RefersTo:=Range(Range("A2") ,
Range("P65536").End(xlUp))
Selection.AutoFilter Field:, Criteria1:="=A*", Operator:=xlAnd
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "database").CreatePivotTable TableDestination:="" _
        , TableName:="Tableau croisé dynamique1"

Le résultat du tableau croisé comprend toutes les lignes de database, je
voudrais obtenir un résultat qu'à partir des lignes visibles.

Merci pour votre aide.

BH.


Avatar
Bruno RCSC
Merci JB.

Je vais adapter l'exemple non sans contraintes.

BH


"JB" a écrit dans le message de news:

Bonjour,

Il faut copier les lignes filtrées dans un autre tableau et créer le
TCD sur ce tableau

http://boisgontierjacques.free.fr/fichiers/Filtre/FiltreAutoTCD.xls

Sub Extrait()
nf = "BDExtrait"
Sheets(nf).Cells.ClearContents
Range("_FilterDataBase").SpecialCells(xlCellTypeVisible).Copy
Sheets(nf).[A1]
Sheets("TCD").PivotTables("Tableau croisé
dynamique1").PivotCache.Refresh
Calculate
End Sub

JB
http://boisgontierjacques.free.fr/


On 22 mar, 12:53, "Bruno RCSC" wrote:
Bonjour,

Sous excel 2002.

Comment doit on procéder pour créer un TCD qui prenne le résultat d'un
filtre ?

J'utilise le code suivant :
ActiveWorkbook.Names.Add Name:="database", RefersTo:=Range(Range("A2"),
Range("P65536").End(xlUp))
Selection.AutoFilter Field:, Criteria1:="=A*", Operator:=xlAnd
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"database").CreatePivotTable TableDestination:="" _
, TableName:="Tableau croisé dynamique1"

Le résultat du tableau croisé comprend toutes les lignes de database, je
voudrais obtenir un résultat qu'à partir des lignes visibles.

Merci pour votre aide.

BH.