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

Formule Tableau Croisé

1 réponse
Avatar
Ghyslain
Bonjour a tous,

j'ai la formule suivante en vba qui me creer un
tableau croisé.

ActiveWorkbook.PivotCaches.Add(SourceType:=xlConsolidation, SourceData:=
_
Array(Array("'Semaine Oct 10-15'!R8C4:R38C5", "Élément1"), Array( _
"'Semaine Oct 10-15'!R52C4:R82C6", "Élément2"))).CreatePivotTable _
TableDestination:= _
"'[T-M Rapport Heures 2005(simon).xls]Semaine Oct 10-15'!R3C16",
TableName:= _
"Tableau croisé dynamique5", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique5").DataPivotField.PivotItems( _
"Nombre de Valeur").Position = 1
ActiveWorkbook.ShowPivotTableFieldList = True

ce qui fonctionne super bien mais au lieu de

SourceData:= _
Array(Array("'Semaine Oct 10-15'!R8C4:R38C5", "Élément1"),

j'aimerai que ma source data ressemble a sa exemple :

activesheet.range("D8:E38")... pour élément1

et activesheet.range("D96:E126")... pour élément2


est-ce que sa ce fait ou bien faut absolument lui donner un nom de feuille ?


ps. j'ai essayer avec lui sa fonctionne mais je peut pas mettre plus d'une
plage :(

ActiveSheet.PivotTableWizard _
SourceType:=xlDatabase, _
SourceData:=ActiveSheet.Range("D8:E38"), _
TableDestination:=Range("P1"), _
TableName:="MonTCD"

ActiveSheet.PivotTables("MonTCD").AddFields RowFields:="# Projet"
ActiveSheet.PivotTables("MonTCD").PivotFields("Actuel").Orientation =
xlDataField

Merci de votre aide :)

1 réponse

Avatar
isabelle
bonjour Ghyslain,

ActiveWorkbook.PivotCaches.Add(SourceType:=xlConsolidation, SourceData:= _
Array(Array("" & ActiveSheet.Range("D8:E38") & "", "Élément1"), Array( _
"" & ActiveSheet.Range("D96:E126") & "", "Élément2"))).CreatePivotTable _
TableDestination:= _
"'[T-M Rapport Heures 2005(simon).xls]Semaine Oct 10-15'!R3C16", TableName:= _
"Tableau croisé dynamique5", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé dynamique5").DataPivotField.PivotItems( _
"Nombre de Valeur").Position = 1
ActiveWorkbook.ShowPivotTableFieldList = True

isabelle


Bonjour a tous,

j'ai la formule suivante en vba qui me creer un
tableau croisé.

ActiveWorkbook.PivotCaches.Add(SourceType:=xlConsolidation, SourceData:=
_
Array(Array("'Semaine Oct 10-15'!R8C4:R38C5", "Élément1"), Array( _
"'Semaine Oct 10-15'!R52C4:R82C6", "Élément2"))).CreatePivotTable _
TableDestination:= _
"'[T-M Rapport Heures 2005(simon).xls]Semaine Oct 10-15'!R3C16",
TableName:= _
"Tableau croisé dynamique5", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique5").DataPivotField.PivotItems( _
"Nombre de Valeur").Position = 1
ActiveWorkbook.ShowPivotTableFieldList = True

ce qui fonctionne super bien mais au lieu de

SourceData:= _
Array(Array("'Semaine Oct 10-15'!R8C4:R38C5", "Élément1"),

j'aimerai que ma source data ressemble a sa exemple :

activesheet.range("D8:E38")... pour élément1

et activesheet.range("D96:E126")... pour élément2


est-ce que sa ce fait ou bien faut absolument lui donner un nom de feuille ?


ps. j'ai essayer avec lui sa fonctionne mais je peut pas mettre plus d'une
plage :(

ActiveSheet.PivotTableWizard _
SourceType:=xlDatabase, _
SourceData:¬tiveSheet.Range("D8:E38"), _
TableDestination:=Range("P1"), _
TableName:="MonTCD"

ActiveSheet.PivotTables("MonTCD").AddFields RowFields:="# Projet"
ActiveSheet.PivotTables("MonTCD").PivotFields("Actuel").Orientation =
xlDataField

Merci de votre aide :)