Merci encore Daniel,
Par contre, j'ai essayé ta formule avec "Net" à la place de "Nombres"
soit :
ActiveSheet.PivotTables("TDC1").PivotFields("Somme de Net").Function =
xlSum
Et ca ne marche pas.
j'ai essayé avec "Somme de rubrique" ; "Nombre de Net" ; "somme de nombre
de
net". Rien...
Saurais-tu pourquoi cela ne fonctionne pas ?
Merci d'avance !
Slts
JiffeyBonjour.
Si c'est le champ "Net qu'il faut additionner :
ActiveSheet.PivotTables("TCD1").PivotFields( _
"Somme de nombres").Function = xlSum
"nombres" étant le nom du champ à additionner.
Cordialement.
Daniel
"jiffey" a écrit dans le message de
news:Merci beaucoup Daniel !
Par conter, y a-t-il un moyen d'avoir la somme et non le nombre comme
paramètre du champ ?
Merci de votre réponse !
Cdt
Jiffeyessaie ce code :
Sheets("stats").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData:= _
"stats!R1C1:R348C8").CreatePivotTable TableDestination:= _
"onglet1!R1C1", TableName:= _
"TCD1", DefaultVersion:=xlPivotTableVersion10
Sheets("onglet1").PivotTables("TCD1").AddFields RowFields:= _
"Livré", ColumnFields:="Rubrique"
Sheets("onglet1").PivotTables("TCD1").PivotFields("Net"). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveWorkbook.ShowPivotTableFieldList = False
Daniel
"jiffey" a écrit dans le message de
news:Merci à vous,
Bon en fait je crois que le plus simple c'est de créer mon tableau
croisé
ynamique sur une feuille nommée existante. Au moins, je n'aurai plus
de
problème pour relancer la macro.
Par contre, impossible de créer le code qui convient, même en
utilisant
l'enregistreur. Je ne comprends pas...
Ci-joint le fichier et la macro que j'ai faite :
http://cjoint.com/?jmr2Tf28hJ
Qu'est-ce qui ne va pas ??
Merci d'avance !
JiffeyRebonjour à toi
L'idéal serai que tu nous transmettes ton fichier sur :
http://www.cijoint.fr/index.php
et de nous communiquer le lien afin que l'on puisse l'étudierSnif... Pas de solution ?
En plus je n'arrive pas à faire marcher ma macro si je veux
placer
le
tableau croisé dynamique dans une feuille déjà existante. Il
plante
et
je ne
comprends pas pourquoi...
Si qqn sait pourquoi...
Cdt
JF
macro :
Range("C6").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData: >> >> >> > _
"stats!R1C1:R1808C16").CreatePivotTable
TableDestination:= _
"'[Ultimatemacro - vision hiérarchie -
v1.0.xls]onglet1'!R1:R65536" _
, TableName:="Tableau croisé dynamique1",
DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique1").AddFields
RowFields:= _
"Livré", ColumnFields:="Rubrique"
ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Net"). _
Orientation = xlDataFieldSalut à toi
Il est domage que je n'ai pas ton code car il doit pour buguer
faire
appel
aux différents noms des feuilles crées comme par exemple :
Sheets("Feuil1").Select
Sheets("Feuil2").Select
Sheets("Feuil3").Select
Qui ne peux s'exécuter si les noms des feuilles ajoutées sont
différents
(Feuil4, Feuil5, Feuil6)
Une solution toute simple consiste lors de la création des
feuilles
de faire
appel à des variables qui porteront leur nom ainsi :
F1=Sheets.Add.Name
La première feuille est créée dont le nom est porté par la
variable
F1
Idem pour les 2 autres feuilles :
F2=Sheets.Add.Name
F2=Sheets.Add.Name
Et d'adapter les instructions qui utilisent ces noms ainsi :
Sheets(F1).Select
Sheets(F2).Select
Sheets(F3).Select
Tu peux donc créer toutes tes feuilles sans te soucier de leur
appellation
Celles-ci suivront automatiquement dans le reste de ta macro
Celà devrait faireBonjour,
J'ai une macro qui, au cours de son application, crée 3
nouvelles
feuilles
dénommées par défaut Feuil1, Feuil2, Feuil3
Cette macro a pour vocation à être relancée plusieurs fois de
suite
(relance
forcément manuelle).
Le souci justement, c'est que lorsque je souhaite relancer la
macro, les
nouvelles feuilles créer vont être Feuil4, Feuil5, Feuil6.
Et là les feuilles ne sont pas reconnues, d'où bug.
La seule solution que j'ai trouvée c'est de l'enregistrer,
quitter,
puis
réouvrir le fichier excel pour relancer la macro.
N'y aurait-il pas une autre solution afin de "remettre les
compteurs à zéro"
et pouvoir ainsi relancer la macro sans quitter auparavant ?
J'espère avoir été clair...
Merci beaucoup d'avance à vous tous !
Cdt
Jiffey
Merci encore Daniel,
Par contre, j'ai essayé ta formule avec "Net" à la place de "Nombres"
soit :
ActiveSheet.PivotTables("TDC1").PivotFields("Somme de Net").Function =
xlSum
Et ca ne marche pas.
j'ai essayé avec "Somme de rubrique" ; "Nombre de Net" ; "somme de nombre
de
net". Rien...
Saurais-tu pourquoi cela ne fonctionne pas ?
Merci d'avance !
Slts
Jiffey
Bonjour.
Si c'est le champ "Net qu'il faut additionner :
ActiveSheet.PivotTables("TCD1").PivotFields( _
"Somme de nombres").Function = xlSum
"nombres" étant le nom du champ à additionner.
Cordialement.
Daniel
"jiffey" <jiffey@discussions.microsoft.com> a écrit dans le message de
news:
FA82DDFB-9CBB-43B5-ABBD-168636996D4A@microsoft.com...
Merci beaucoup Daniel !
Par conter, y a-t-il un moyen d'avoir la somme et non le nombre comme
paramètre du champ ?
Merci de votre réponse !
Cdt
Jiffey
essaie ce code :
Sheets("stats").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData:= _
"stats!R1C1:R348C8").CreatePivotTable TableDestination:= _
"onglet1!R1C1", TableName:= _
"TCD1", DefaultVersion:=xlPivotTableVersion10
Sheets("onglet1").PivotTables("TCD1").AddFields RowFields:= _
"Livré", ColumnFields:="Rubrique"
Sheets("onglet1").PivotTables("TCD1").PivotFields("Net"). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveWorkbook.ShowPivotTableFieldList = False
Daniel
"jiffey" <jiffey@discussions.microsoft.com> a écrit dans le message de
news:
03DA949E-607C-4D5E-862E-C32FDA8B6E77@microsoft.com...
Merci à vous,
Bon en fait je crois que le plus simple c'est de créer mon tableau
croisé
ynamique sur une feuille nommée existante. Au moins, je n'aurai plus
de
problème pour relancer la macro.
Par contre, impossible de créer le code qui convient, même en
utilisant
l'enregistreur. Je ne comprends pas...
Ci-joint le fichier et la macro que j'ai faite :
http://cjoint.com/?jmr2Tf28hJ
Qu'est-ce qui ne va pas ??
Merci d'avance !
Jiffey
Rebonjour à toi
L'idéal serai que tu nous transmettes ton fichier sur :
http://www.cijoint.fr/index.php
et de nous communiquer le lien afin que l'on puisse l'étudier
Snif... Pas de solution ?
En plus je n'arrive pas à faire marcher ma macro si je veux
placer
le
tableau croisé dynamique dans une feuille déjà existante. Il
plante
et
je ne
comprends pas pourquoi...
Si qqn sait pourquoi...
Cdt
JF
macro :
Range("C6").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData: >> >> >> > _
"stats!R1C1:R1808C16").CreatePivotTable
TableDestination:= _
"'[Ultimatemacro - vision hiérarchie - ByJeFfLegR@s
v1.0.xls]onglet1'!R1:R65536" _
, TableName:="Tableau croisé dynamique1",
DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique1").AddFields
RowFields:= _
"Livré", ColumnFields:="Rubrique"
ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Net"). _
Orientation = xlDataField
Salut à toi
Il est domage que je n'ai pas ton code car il doit pour buguer
faire
appel
aux différents noms des feuilles crées comme par exemple :
Sheets("Feuil1").Select
Sheets("Feuil2").Select
Sheets("Feuil3").Select
Qui ne peux s'exécuter si les noms des feuilles ajoutées sont
différents
(Feuil4, Feuil5, Feuil6)
Une solution toute simple consiste lors de la création des
feuilles
de faire
appel à des variables qui porteront leur nom ainsi :
F1=Sheets.Add.Name
La première feuille est créée dont le nom est porté par la
variable
F1
Idem pour les 2 autres feuilles :
F2=Sheets.Add.Name
F2=Sheets.Add.Name
Et d'adapter les instructions qui utilisent ces noms ainsi :
Sheets(F1).Select
Sheets(F2).Select
Sheets(F3).Select
Tu peux donc créer toutes tes feuilles sans te soucier de leur
appellation
Celles-ci suivront automatiquement dans le reste de ta macro
Celà devrait faire
Bonjour,
J'ai une macro qui, au cours de son application, crée 3
nouvelles
feuilles
dénommées par défaut Feuil1, Feuil2, Feuil3
Cette macro a pour vocation à être relancée plusieurs fois de
suite
(relance
forcément manuelle).
Le souci justement, c'est que lorsque je souhaite relancer la
macro, les
nouvelles feuilles créer vont être Feuil4, Feuil5, Feuil6.
Et là les feuilles ne sont pas reconnues, d'où bug.
La seule solution que j'ai trouvée c'est de l'enregistrer,
quitter,
puis
réouvrir le fichier excel pour relancer la macro.
N'y aurait-il pas une autre solution afin de "remettre les
compteurs à zéro"
et pouvoir ainsi relancer la macro sans quitter auparavant ?
J'espère avoir été clair...
Merci beaucoup d'avance à vous tous !
Cdt
Jiffey
Merci encore Daniel,
Par contre, j'ai essayé ta formule avec "Net" à la place de "Nombres"
soit :
ActiveSheet.PivotTables("TDC1").PivotFields("Somme de Net").Function =
xlSum
Et ca ne marche pas.
j'ai essayé avec "Somme de rubrique" ; "Nombre de Net" ; "somme de nombre
de
net". Rien...
Saurais-tu pourquoi cela ne fonctionne pas ?
Merci d'avance !
Slts
JiffeyBonjour.
Si c'est le champ "Net qu'il faut additionner :
ActiveSheet.PivotTables("TCD1").PivotFields( _
"Somme de nombres").Function = xlSum
"nombres" étant le nom du champ à additionner.
Cordialement.
Daniel
"jiffey" a écrit dans le message de
news:Merci beaucoup Daniel !
Par conter, y a-t-il un moyen d'avoir la somme et non le nombre comme
paramètre du champ ?
Merci de votre réponse !
Cdt
Jiffeyessaie ce code :
Sheets("stats").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData:= _
"stats!R1C1:R348C8").CreatePivotTable TableDestination:= _
"onglet1!R1C1", TableName:= _
"TCD1", DefaultVersion:=xlPivotTableVersion10
Sheets("onglet1").PivotTables("TCD1").AddFields RowFields:= _
"Livré", ColumnFields:="Rubrique"
Sheets("onglet1").PivotTables("TCD1").PivotFields("Net"). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveWorkbook.ShowPivotTableFieldList = False
Daniel
"jiffey" a écrit dans le message de
news:Merci à vous,
Bon en fait je crois que le plus simple c'est de créer mon tableau
croisé
ynamique sur une feuille nommée existante. Au moins, je n'aurai plus
de
problème pour relancer la macro.
Par contre, impossible de créer le code qui convient, même en
utilisant
l'enregistreur. Je ne comprends pas...
Ci-joint le fichier et la macro que j'ai faite :
http://cjoint.com/?jmr2Tf28hJ
Qu'est-ce qui ne va pas ??
Merci d'avance !
JiffeyRebonjour à toi
L'idéal serai que tu nous transmettes ton fichier sur :
http://www.cijoint.fr/index.php
et de nous communiquer le lien afin que l'on puisse l'étudierSnif... Pas de solution ?
En plus je n'arrive pas à faire marcher ma macro si je veux
placer
le
tableau croisé dynamique dans une feuille déjà existante. Il
plante
et
je ne
comprends pas pourquoi...
Si qqn sait pourquoi...
Cdt
JF
macro :
Range("C6").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData: >> >> >> > _
"stats!R1C1:R1808C16").CreatePivotTable
TableDestination:= _
"'[Ultimatemacro - vision hiérarchie -
v1.0.xls]onglet1'!R1:R65536" _
, TableName:="Tableau croisé dynamique1",
DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique1").AddFields
RowFields:= _
"Livré", ColumnFields:="Rubrique"
ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Net"). _
Orientation = xlDataFieldSalut à toi
Il est domage que je n'ai pas ton code car il doit pour buguer
faire
appel
aux différents noms des feuilles crées comme par exemple :
Sheets("Feuil1").Select
Sheets("Feuil2").Select
Sheets("Feuil3").Select
Qui ne peux s'exécuter si les noms des feuilles ajoutées sont
différents
(Feuil4, Feuil5, Feuil6)
Une solution toute simple consiste lors de la création des
feuilles
de faire
appel à des variables qui porteront leur nom ainsi :
F1=Sheets.Add.Name
La première feuille est créée dont le nom est porté par la
variable
F1
Idem pour les 2 autres feuilles :
F2=Sheets.Add.Name
F2=Sheets.Add.Name
Et d'adapter les instructions qui utilisent ces noms ainsi :
Sheets(F1).Select
Sheets(F2).Select
Sheets(F3).Select
Tu peux donc créer toutes tes feuilles sans te soucier de leur
appellation
Celles-ci suivront automatiquement dans le reste de ta macro
Celà devrait faireBonjour,
J'ai une macro qui, au cours de son application, crée 3
nouvelles
feuilles
dénommées par défaut Feuil1, Feuil2, Feuil3
Cette macro a pour vocation à être relancée plusieurs fois de
suite
(relance
forcément manuelle).
Le souci justement, c'est que lorsque je souhaite relancer la
macro, les
nouvelles feuilles créer vont être Feuil4, Feuil5, Feuil6.
Et là les feuilles ne sont pas reconnues, d'où bug.
La seule solution que j'ai trouvée c'est de l'enregistrer,
quitter,
puis
réouvrir le fichier excel pour relancer la macro.
N'y aurait-il pas une autre solution afin de "remettre les
compteurs à zéro"
et pouvoir ainsi relancer la macro sans quitter auparavant ?
J'espère avoir été clair...
Merci beaucoup d'avance à vous tous !
Cdt
Jiffey
Merci encore Daniel,
Par contre, j'ai essayé ta formule avec "Net" à la place de "Nombres"
soit :
ActiveSheet.PivotTables("TDC1").PivotFields("Somme de Net").Function =
xlSum
Et ca ne marche pas.
j'ai essayé avec "Somme de rubrique" ; "Nombre de Net" ; "somme de nombre
de
net". Rien...
Saurais-tu pourquoi cela ne fonctionne pas ?
Merci d'avance !
Slts
JiffeyBonjour.
Si c'est le champ "Net qu'il faut additionner :
ActiveSheet.PivotTables("TCD1").PivotFields( _
"Somme de nombres").Function = xlSum
"nombres" étant le nom du champ à additionner.
Cordialement.
Daniel
"jiffey" a écrit dans le message de
news:Merci beaucoup Daniel !
Par conter, y a-t-il un moyen d'avoir la somme et non le nombre comme
paramètre du champ ?
Merci de votre réponse !
Cdt
Jiffeyessaie ce code :
Sheets("stats").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData:= _
"stats!R1C1:R348C8").CreatePivotTable TableDestination:= _
"onglet1!R1C1", TableName:= _
"TCD1", DefaultVersion:=xlPivotTableVersion10
Sheets("onglet1").PivotTables("TCD1").AddFields RowFields:= _
"Livré", ColumnFields:="Rubrique"
Sheets("onglet1").PivotTables("TCD1").PivotFields("Net"). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveWorkbook.ShowPivotTableFieldList = False
Daniel
"jiffey" a écrit dans le message de
news:Merci à vous,
Bon en fait je crois que le plus simple c'est de créer mon tableau
croisé
ynamique sur une feuille nommée existante. Au moins, je n'aurai plus
de
problème pour relancer la macro.
Par contre, impossible de créer le code qui convient, même en
utilisant
l'enregistreur. Je ne comprends pas...
Ci-joint le fichier et la macro que j'ai faite :
http://cjoint.com/?jmr2Tf28hJ
Qu'est-ce qui ne va pas ??
Merci d'avance !
JiffeyRebonjour à toi
L'idéal serai que tu nous transmettes ton fichier sur :
http://www.cijoint.fr/index.php
et de nous communiquer le lien afin que l'on puisse l'étudierSnif... Pas de solution ?
En plus je n'arrive pas à faire marcher ma macro si je veux
placer
le
tableau croisé dynamique dans une feuille déjà existante. Il
plante
et
je ne
comprends pas pourquoi...
Si qqn sait pourquoi...
Cdt
JF
macro :
Range("C6").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData: >> >> >> > _
"stats!R1C1:R1808C16").CreatePivotTable
TableDestination:= _
"'[Ultimatemacro - vision hiérarchie -
v1.0.xls]onglet1'!R1:R65536" _
, TableName:="Tableau croisé dynamique1",
DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique1").AddFields
RowFields:= _
"Livré", ColumnFields:="Rubrique"
ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Net"). _
Orientation = xlDataFieldSalut à toi
Il est domage que je n'ai pas ton code car il doit pour buguer
faire
appel
aux différents noms des feuilles crées comme par exemple :
Sheets("Feuil1").Select
Sheets("Feuil2").Select
Sheets("Feuil3").Select
Qui ne peux s'exécuter si les noms des feuilles ajoutées sont
différents
(Feuil4, Feuil5, Feuil6)
Une solution toute simple consiste lors de la création des
feuilles
de faire
appel à des variables qui porteront leur nom ainsi :
F1=Sheets.Add.Name
La première feuille est créée dont le nom est porté par la
variable
F1
Idem pour les 2 autres feuilles :
F2=Sheets.Add.Name
F2=Sheets.Add.Name
Et d'adapter les instructions qui utilisent ces noms ainsi :
Sheets(F1).Select
Sheets(F2).Select
Sheets(F3).Select
Tu peux donc créer toutes tes feuilles sans te soucier de leur
appellation
Celles-ci suivront automatiquement dans le reste de ta macro
Celà devrait faireBonjour,
J'ai une macro qui, au cours de son application, crée 3
nouvelles
feuilles
dénommées par défaut Feuil1, Feuil2, Feuil3
Cette macro a pour vocation à être relancée plusieurs fois de
suite
(relance
forcément manuelle).
Le souci justement, c'est que lorsque je souhaite relancer la
macro, les
nouvelles feuilles créer vont être Feuil4, Feuil5, Feuil6.
Et là les feuilles ne sont pas reconnues, d'où bug.
La seule solution que j'ai trouvée c'est de l'enregistrer,
quitter,
puis
réouvrir le fichier excel pour relancer la macro.
N'y aurait-il pas une autre solution afin de "remettre les
compteurs à zéro"
et pouvoir ainsi relancer la macro sans quitter auparavant ?
J'espère avoir été clair...
Merci beaucoup d'avance à vous tous !
Cdt
Jiffey
Merci encore Daniel,
Par contre, j'ai essayé ta formule avec "Net" à la place de "Nombres"
soit :
ActiveSheet.PivotTables("TDC1").PivotFields("Somme de Net").Function =
xlSum
Et ca ne marche pas.
j'ai essayé avec "Somme de rubrique" ; "Nombre de Net" ; "somme de nombre
de
net". Rien...
Saurais-tu pourquoi cela ne fonctionne pas ?
Merci d'avance !
Slts
Jiffey
Bonjour.
Si c'est le champ "Net qu'il faut additionner :
ActiveSheet.PivotTables("TCD1").PivotFields( _
"Somme de nombres").Function = xlSum
"nombres" étant le nom du champ à additionner.
Cordialement.
Daniel
"jiffey" <jiffey@discussions.microsoft.com> a écrit dans le message de
news:
FA82DDFB-9CBB-43B5-ABBD-168636996D4A@microsoft.com...
Merci beaucoup Daniel !
Par conter, y a-t-il un moyen d'avoir la somme et non le nombre comme
paramètre du champ ?
Merci de votre réponse !
Cdt
Jiffey
essaie ce code :
Sheets("stats").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData:= _
"stats!R1C1:R348C8").CreatePivotTable TableDestination:= _
"onglet1!R1C1", TableName:= _
"TCD1", DefaultVersion:=xlPivotTableVersion10
Sheets("onglet1").PivotTables("TCD1").AddFields RowFields:= _
"Livré", ColumnFields:="Rubrique"
Sheets("onglet1").PivotTables("TCD1").PivotFields("Net"). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveWorkbook.ShowPivotTableFieldList = False
Daniel
"jiffey" <jiffey@discussions.microsoft.com> a écrit dans le message de
news:
03DA949E-607C-4D5E-862E-C32FDA8B6E77@microsoft.com...
Merci à vous,
Bon en fait je crois que le plus simple c'est de créer mon tableau
croisé
ynamique sur une feuille nommée existante. Au moins, je n'aurai plus
de
problème pour relancer la macro.
Par contre, impossible de créer le code qui convient, même en
utilisant
l'enregistreur. Je ne comprends pas...
Ci-joint le fichier et la macro que j'ai faite :
http://cjoint.com/?jmr2Tf28hJ
Qu'est-ce qui ne va pas ??
Merci d'avance !
Jiffey
Rebonjour à toi
L'idéal serai que tu nous transmettes ton fichier sur :
http://www.cijoint.fr/index.php
et de nous communiquer le lien afin que l'on puisse l'étudier
Snif... Pas de solution ?
En plus je n'arrive pas à faire marcher ma macro si je veux
placer
le
tableau croisé dynamique dans une feuille déjà existante. Il
plante
et
je ne
comprends pas pourquoi...
Si qqn sait pourquoi...
Cdt
JF
macro :
Range("C6").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData: >> >> >> > _
"stats!R1C1:R1808C16").CreatePivotTable
TableDestination:= _
"'[Ultimatemacro - vision hiérarchie - ByJeFfLegR@s
v1.0.xls]onglet1'!R1:R65536" _
, TableName:="Tableau croisé dynamique1",
DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique1").AddFields
RowFields:= _
"Livré", ColumnFields:="Rubrique"
ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Net"). _
Orientation = xlDataField
Salut à toi
Il est domage que je n'ai pas ton code car il doit pour buguer
faire
appel
aux différents noms des feuilles crées comme par exemple :
Sheets("Feuil1").Select
Sheets("Feuil2").Select
Sheets("Feuil3").Select
Qui ne peux s'exécuter si les noms des feuilles ajoutées sont
différents
(Feuil4, Feuil5, Feuil6)
Une solution toute simple consiste lors de la création des
feuilles
de faire
appel à des variables qui porteront leur nom ainsi :
F1=Sheets.Add.Name
La première feuille est créée dont le nom est porté par la
variable
F1
Idem pour les 2 autres feuilles :
F2=Sheets.Add.Name
F2=Sheets.Add.Name
Et d'adapter les instructions qui utilisent ces noms ainsi :
Sheets(F1).Select
Sheets(F2).Select
Sheets(F3).Select
Tu peux donc créer toutes tes feuilles sans te soucier de leur
appellation
Celles-ci suivront automatiquement dans le reste de ta macro
Celà devrait faire
Bonjour,
J'ai une macro qui, au cours de son application, crée 3
nouvelles
feuilles
dénommées par défaut Feuil1, Feuil2, Feuil3
Cette macro a pour vocation à être relancée plusieurs fois de
suite
(relance
forcément manuelle).
Le souci justement, c'est que lorsque je souhaite relancer la
macro, les
nouvelles feuilles créer vont être Feuil4, Feuil5, Feuil6.
Et là les feuilles ne sont pas reconnues, d'où bug.
La seule solution que j'ai trouvée c'est de l'enregistrer,
quitter,
puis
réouvrir le fichier excel pour relancer la macro.
N'y aurait-il pas une autre solution afin de "remettre les
compteurs à zéro"
et pouvoir ainsi relancer la macro sans quitter auparavant ?
J'espère avoir été clair...
Merci beaucoup d'avance à vous tous !
Cdt
Jiffey
Merci encore Daniel,
Par contre, j'ai essayé ta formule avec "Net" à la place de "Nombres"
soit :
ActiveSheet.PivotTables("TDC1").PivotFields("Somme de Net").Function =
xlSum
Et ca ne marche pas.
j'ai essayé avec "Somme de rubrique" ; "Nombre de Net" ; "somme de nombre
de
net". Rien...
Saurais-tu pourquoi cela ne fonctionne pas ?
Merci d'avance !
Slts
JiffeyBonjour.
Si c'est le champ "Net qu'il faut additionner :
ActiveSheet.PivotTables("TCD1").PivotFields( _
"Somme de nombres").Function = xlSum
"nombres" étant le nom du champ à additionner.
Cordialement.
Daniel
"jiffey" a écrit dans le message de
news:Merci beaucoup Daniel !
Par conter, y a-t-il un moyen d'avoir la somme et non le nombre comme
paramètre du champ ?
Merci de votre réponse !
Cdt
Jiffeyessaie ce code :
Sheets("stats").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData:= _
"stats!R1C1:R348C8").CreatePivotTable TableDestination:= _
"onglet1!R1C1", TableName:= _
"TCD1", DefaultVersion:=xlPivotTableVersion10
Sheets("onglet1").PivotTables("TCD1").AddFields RowFields:= _
"Livré", ColumnFields:="Rubrique"
Sheets("onglet1").PivotTables("TCD1").PivotFields("Net"). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveWorkbook.ShowPivotTableFieldList = False
Daniel
"jiffey" a écrit dans le message de
news:Merci à vous,
Bon en fait je crois que le plus simple c'est de créer mon tableau
croisé
ynamique sur une feuille nommée existante. Au moins, je n'aurai plus
de
problème pour relancer la macro.
Par contre, impossible de créer le code qui convient, même en
utilisant
l'enregistreur. Je ne comprends pas...
Ci-joint le fichier et la macro que j'ai faite :
http://cjoint.com/?jmr2Tf28hJ
Qu'est-ce qui ne va pas ??
Merci d'avance !
JiffeyRebonjour à toi
L'idéal serai que tu nous transmettes ton fichier sur :
http://www.cijoint.fr/index.php
et de nous communiquer le lien afin que l'on puisse l'étudierSnif... Pas de solution ?
En plus je n'arrive pas à faire marcher ma macro si je veux
placer
le
tableau croisé dynamique dans une feuille déjà existante. Il
plante
et
je ne
comprends pas pourquoi...
Si qqn sait pourquoi...
Cdt
JF
macro :
Range("C6").Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase,
SourceData: >> >> >> > _
"stats!R1C1:R1808C16").CreatePivotTable
TableDestination:= _
"'[Ultimatemacro - vision hiérarchie -
v1.0.xls]onglet1'!R1:R65536" _
, TableName:="Tableau croisé dynamique1",
DefaultVersion:= _
xlPivotTableVersion10
ActiveSheet.PivotTables("Tableau croisé
dynamique1").AddFields
RowFields:= _
"Livré", ColumnFields:="Rubrique"
ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Net"). _
Orientation = xlDataFieldSalut à toi
Il est domage que je n'ai pas ton code car il doit pour buguer
faire
appel
aux différents noms des feuilles crées comme par exemple :
Sheets("Feuil1").Select
Sheets("Feuil2").Select
Sheets("Feuil3").Select
Qui ne peux s'exécuter si les noms des feuilles ajoutées sont
différents
(Feuil4, Feuil5, Feuil6)
Une solution toute simple consiste lors de la création des
feuilles
de faire
appel à des variables qui porteront leur nom ainsi :
F1=Sheets.Add.Name
La première feuille est créée dont le nom est porté par la
variable
F1
Idem pour les 2 autres feuilles :
F2=Sheets.Add.Name
F2=Sheets.Add.Name
Et d'adapter les instructions qui utilisent ces noms ainsi :
Sheets(F1).Select
Sheets(F2).Select
Sheets(F3).Select
Tu peux donc créer toutes tes feuilles sans te soucier de leur
appellation
Celles-ci suivront automatiquement dans le reste de ta macro
Celà devrait faireBonjour,
J'ai une macro qui, au cours de son application, crée 3
nouvelles
feuilles
dénommées par défaut Feuil1, Feuil2, Feuil3
Cette macro a pour vocation à être relancée plusieurs fois de
suite
(relance
forcément manuelle).
Le souci justement, c'est que lorsque je souhaite relancer la
macro, les
nouvelles feuilles créer vont être Feuil4, Feuil5, Feuil6.
Et là les feuilles ne sont pas reconnues, d'où bug.
La seule solution que j'ai trouvée c'est de l'enregistrer,
quitter,
puis
réouvrir le fichier excel pour relancer la macro.
N'y aurait-il pas une autre solution afin de "remettre les
compteurs à zéro"
et pouvoir ainsi relancer la macro sans quitter auparavant ?
J'espère avoir été clair...
Merci beaucoup d'avance à vous tous !
Cdt
Jiffey