Excel Downloads
Forum

Précédent   Excel Downloads Forums > Archives > Forum Excel Downloads - Archives


 
 
LinkBack Outils de la discussion
Vieux 04/01/2005, 17h09   #1 (permalink)
CLBR
Guest
 
Messages: n/a
Par défaut Tableau croisé dynamique et Macro

Bonjour
Merci d'avance à qui pourra m'aider pour mettre en place une macro à partir d'une feuille de données "Données" comportant un nombre variable de lignes 2 à plusieurs milliers et un nombre fixe de 37 colonne

je cherche à pouvoir utiliser la même macro quelque soit ce nombre de ligne
Je ne sais pas comment obtenir, dans ce cas, la zone depuis A3 jusqu'à LastCellme permettant de poursuivre la construction de mes tableaux.
C'est le R1402C37 qui me gêne : Comment écrire R"iLast-Line"C37

Sheets("Données").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatab ase, SourceData:= _
"Données!R3C1:R1402C37").CreatePivotTable TableDestination:="", TableName:= _
"Tableau croisé dynamique1"
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select

Merci d'avance
 
ANNONCES
Vieux 04/01/2005, 23h28   #2 (permalink)
Dan
Guest
 
Messages: n/a
Par défaut Re: Tableau croisé dynamique et Macro

Bonsoir,

Voici une solution

1. Dans ta sheet "Données", sélectionne la base de données complète
2. Attribue lui un nom via menu/insertion/nom/ définir (ex : Database)
3. Dans ta macro, remplace "Données!R3C1:R1402C37" par le nom que tu as attribué à ta base de données (ici ex "Database")

petite condition toutefois, lorsque tu ajouteras des données veille bien à les insérer à l'intérieur su tableau existant (donc avant la dernière ligne) et non à la suite de la dernière ligne. Cette astuce te permettra de conserver l'entièreté du tableau sous le nom que tu as donné.

Si tu vois une contrainte à cela, fais le savoir

Bon travail

@+ dan
 
Vieux 05/01/2005, 13h16   #3 (permalink)
CLBR
Guest
 
Messages: n/a
Par défaut Re: Tableau croisé dynamique et Macro

Merci Dan
J'essaie et te tiendrai au courant
 
Vieux 07/01/2005, 11h51   #4 (permalink)
CLBR
Guest
 
Messages: n/a
Par défaut Re: Tableau croisé dynamique et Macro

Bonjour Dan
J'ai fini par trouver une solution qui marche quelque soit le nombre de lignes.

Sheets("DONNEES").Select
Range("A3").Select

'Selection de la zone : attention le n° de colonne est figé au n° 37 (colonne AK)
Selection.End(xlDown).Select
iLastLine = Selection.Row

'Insertion de la zone dans la définition du TCD
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatab ase, SourceData:= _
"DONNEES!R3C1:R" & iLastLine & "C37").CreatePivotTable TableDestination:="", TableName:= _
"Tableau croisé dynamique1"

'Réalisation du croisement
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveSheet.PivotTables("Tableau croisé dynamique1").SmallGrid = False
ActiveSheet.PivotTables("Tableau croisé dynamique1").AddFields RowFields:= _
Array("xxx", "yyy"), ColumnFields:="zzz"
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
"N° Fiche")
.Orientation = xlDataField
.Function = xlCountNums
End With

Merci encore
 
Vieux 08/01/2005, 23h04   #5 (permalink)
Dan
Guest
 
Messages: n/a
Par défaut Re: Tableau croisé dynamique et Macro

Bonsoir,

Effectivement c'est aussi une solution.

Bonne soirée

@+ Dan
 
ANNONCES
 

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 11h00.


(C) 2006 Excel Downloads