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

Modifier un TCD

23 réponses
Avatar
Stessels
Je m'efforce, sans succ=E8s, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me r=E9pond obstin=E9ment :
"Le nom du champ dynamique n'est pas valide.
Pour cr=E9er un tableau crois=E9 dynamique, vous devez utiliser
des donn=E9es sous forme de liste avec des =E9tiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recr=E9er le TCD sans =EAtre
oblig=E9 de recommencer depuis le d=E9but le long et minutieux
processus de cr=E9ation de la liste

10 réponses

1 2 3
Avatar
Céline Brien
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

"Stessels" a écrit dans le message de news:
06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste
Avatar
Stessels
Merci de votre réponse.
C'est effectivement la formule pour créer une liste-source
auto-redimensionnable... Cela marche très bien lorsque l'on
crée le TCD dans la foulée, mais cela ne marche
malheureusement plus lorsque la liste-source a déjà servi à
créer un TCD - soit AVANT que soit définie la plage "Data"...
C'est tout mon problème, sans doute un problème de cache
interne à effacer ??

-----Message d'origine-----
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

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

06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste


.



Avatar
Daniel.M
Salut,

Pour redéfinir la plage source une fois le TCD créé:

Tu cliques droit sur ton TCD. Tu choisis l'assistant (Wizard en anglais).
Sur le premier panel, tu cliques sur "Précédent" (back en anglais).
Le panel est désormais celui de la sélection de la plage.
Tu donnes la plage ÚTA
Tu cliques sur Terminer.

Salutations,

Daniel M.

"Stessels" wrote in message
news:063901c36fcd$d4288530$
Merci de votre réponse.
C'est effectivement la formule pour créer une liste-source
auto-redimensionnable... Cela marche très bien lorsque l'on
crée le TCD dans la foulée, mais cela ne marche
malheureusement plus lorsque la liste-source a déjà servi à
créer un TCD - soit AVANT que soit définie la plage "Data"...
C'est tout mon problème, sans doute un problème de cache
interne à effacer ??

-----Message d'origine-----
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

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

06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste


.



Avatar
Stessels
La procédure est effectivement valable lorsque l'on crée le
TCD "from scratch" - dans la foulée, au départ d'une
liste-source auto-dimensionnable. Elle ne marche plus
lorsque le TCD a été créé au départ d'une liste non
auto-dimmensionnable, c'est à dire unne liste où la plage
"Data" n'existe pas encore.
Je persiste donc et je signe...
Merci quand même...

-----Message d'origine-----
Salut,

Pour redéfinir la plage source une fois le TCD créé:

Tu cliques droit sur ton TCD. Tu choisis l'assistant
(Wizard en anglais).

Sur le premier panel, tu cliques sur "Précédent" (back en
anglais).

Le panel est désormais celui de la sélection de la plage.
Tu donnes la plage ÚTA
Tu cliques sur Terminer.

Salutations,

Daniel M.

"Stessels" wrote in message
news:063901c36fcd$d4288530$
Merci de votre réponse.
C'est effectivement la formule pour créer une liste-source
auto-redimensionnable... Cela marche très bien lorsque l'on
crée le TCD dans la foulée, mais cela ne marche
malheureusement plus lorsque la liste-source a déjà servi à
créer un TCD - soit AVANT que soit définie la plage "Data"...
C'est tout mon problème, sans doute un problème de cache
interne à effacer ??

-----Message d'origine-----
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

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

06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste


.



.




Avatar
Gaetan Mourmant
J'ai essayé ta procédure, mais je n'arrives pas à reproduire le problème.

Question, quels sont les noms de colonnes de ta base de données ?

--
Gaetan Mourmant
www.polykromy.com
Consultation - Formation
Excel - Data mining

"Stessels" a écrit dans le message de news:
066101c36fe0$051eae00$
La procédure est effectivement valable lorsque l'on crée le
TCD "from scratch" - dans la foulée, au départ d'une
liste-source auto-dimensionnable. Elle ne marche plus
lorsque le TCD a été créé au départ d'une liste non
auto-dimmensionnable, c'est à dire unne liste où la plage
"Data" n'existe pas encore.
Je persiste donc et je signe...
Merci quand même...

-----Message d'origine-----
Salut,

Pour redéfinir la plage source une fois le TCD créé:

Tu cliques droit sur ton TCD. Tu choisis l'assistant
(Wizard en anglais).

Sur le premier panel, tu cliques sur "Précédent" (back en
anglais).

Le panel est désormais celui de la sélection de la plage.
Tu donnes la plage ÚTA
Tu cliques sur Terminer.

Salutations,

Daniel M.

"Stessels" wrote in message
news:063901c36fcd$d4288530$
Merci de votre réponse.
C'est effectivement la formule pour créer une liste-source
auto-redimensionnable... Cela marche très bien lorsque l'on
crée le TCD dans la foulée, mais cela ne marche
malheureusement plus lorsque la liste-source a déjà servi à
créer un TCD - soit AVANT que soit définie la plage "Data"...
C'est tout mon problème, sans doute un problème de cache
interne à effacer ??

-----Message d'origine-----
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

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

06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste


.



.




Avatar
Daniel.M
Bonjour,

La procédure est effectivement valable lorsque l'on crée le
TCD "from scratch" - dans la foulée, au départ d'une
liste-source auto-dimensionnable. Elle ne marche plus
lorsque le TCD a été créé au départ d'une liste non
auto-dimmensionnable, c'est à dire unne liste où la plage
"Data" n'existe pas encore.
Je persiste donc et je signe...
Merci quand même...


J'ai Excel 2000 (et vous?). Je viens de refaire la manip dans un TCD
existant avec champ calculé et je n'ai pas de problème (ou il se peut que je
ne comprenne pas votre demande).

1. Un TCD existant avec plage non-auto-dimmensionnable (i.e. fixe), + champ
calculé dans le TCD
2. Je définis un nouveau nom (Data) qui utilise DECALER pour calculer une
plage dynamiquement
3. Je fais les manips indiquées précédemment (i.e. utiliser l'assistant pour
changer la plage source pour Úta).
4. Le TCD se recalcule automatiquement (champ calculé inclu) et est
maintenant en mesure d'accomoder les nouvelles lignes ajoutées.

Je dois être béni des dieux ;-)

Salutations,

Daniel M.

Avatar
Stessels
Je travaille sur une configuration Microsoft Office X sur
Macintosh eMac

-----Message d'origine-----
Bonjour,

La procédure est effectivement valable lorsque l'on crée le
TCD "from scratch" - dans la foulée, au départ d'une
liste-source auto-dimensionnable. Elle ne marche plus
lorsque le TCD a été créé au départ d'une liste non
auto-dimmensionnable, c'est à dire unne liste où la plage
"Data" n'existe pas encore.
Je persiste donc et je signe...
Merci quand même...


J'ai Excel 2000 (et vous?). Je viens de refaire la manip
dans un TCD

existant avec champ calculé et je n'ai pas de problème (ou
il se peut que je

ne comprenne pas votre demande).

1. Un TCD existant avec plage non-auto-dimmensionnable
(i.e. fixe), + champ

calculé dans le TCD
2. Je définis un nouveau nom (Data) qui utilise DECALER
pour calculer une

plage dynamiquement
3. Je fais les manips indiquées précédemment (i.e.
utiliser l'assistant pour

changer la plage source pour Úta).
4. Le TCD se recalcule automatiquement (champ calculé
inclu) et est

maintenant en mesure d'accomoder les nouvelles lignes
ajoutées.


Je dois être béni des dieux ;-)

Salutations,

Daniel M.

.




Avatar
Daniel.M
Je travaille sur une configuration Microsoft Office X sur
Macintosh eMac


Une version suffisamment récente. Le problème n'est pas là.

Assurez-vous d'INCLURE les titres de colonnes dans votre définition de plage
dynamique (DATA).
Par exemple, si vos titres sont sur la première ligne, la formule référence
pour DATA devrait être:

ÞCALER($A$1;0;0;NBVAL($A$1:$A$2000);NVBAL($A$1:$CA$1))
' et non pas $A$2

Autrement, je ne vois pas.

Salutations,

Daniel M.

Avatar
Stessels
J'ai finalement pu résoudre le problème...

J'utilisais, en effet, une formule "générique", conforme à
celle proposée par Céline Brien

ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))

Il m'a suffit de "personnaliser" la formule en tapant
NBVAL(Data!$A$1:$K$1) pour qu'Excel se comporte à nouveau
de manière civilisée et accepte docilement la plage
auto-dimensionnable lors de la création du TCD
J'en ai conclu que ce sont les" zones de listes", attachées
aux étiquettes de colonnes et stockées à droite de la
liste-source proprement dite qui étaient responsables du
dysfonctionnement de la formule, d'où l'importance de
toujours les positionner avec soin...
Merci de votre aide
En ce qui concerne la programmation destinée à automatiser
l'actualisation, je pensais recourir à une solution plus
simple pour déclencher la procédure "RefreshTable" (
évènement "Activate" sur une ou plusieurs feuilles du
classeur autres que la liste-source, ou une macro
auto-exécutable à l'ouverture du classeur)
Qu'en pensez-vous ?

-----Message d'origine-----
Pas grand chose à ajouter à ce qui a été dit sur la façon
de nommer

dynamiquement la plage du tableau si ce n'est (comme tu as
précisé le nombre de

champs) la plage :
ÞCALER($A$1;;;NBVAL($A$1:$A$2000);NBVAL($A$1:$K$1))
(Etiquettes de colonnes en ligne 1)

Par contre, si tu veux la mise à jour auto du TCD, il faut
passer par une proc

évènementielle (xl2000)
Exemple avec tes données en A1:Kx et mise à jour du TCD si
les 11 champs sont

renseignés (à adapter ?) :
Dans le module de la feuille :

Private Sub Worksheet_Change(ByVal zz As Range)
x = zz.Column: y = zz.Row: If x > 11 Then Exit Sub
If Application.CountA(Range(zz.Offset(0, -x + 1).Address &
":K" & y)) = 11 Then

_
ActiveSheet.PivotTables("LeNomDuTCD").RefreshTable
End Sub

AV

"Stessels" a écrit dans le message
news:

009f01c36ff4$09e2d5b0$
Il s'agit d'une appli de gestion assez complexe et
parfaitement au point, mais qui exige une actualisation
"manuelle" à chaque nouvelle entrée de données, étant donné
qu'une liste auto-dimensionnable n'a pas été établie lors
de la conception. L'opération qqui n"exige guère que
quelques secondes n'est pas très gênante. Ma démarche
actuelle (histoire de peaufiner...),tente néanmoins de
transformer l'application pour rendre ce processus
entièrement automatique.
La liste comporte 11 colonnes, (dont la dernière est
calculée) et il ne me semble pas qu'Excel puisse confondre
deux colonnes au cours du recalcul. Les noms sont les
suivants ; Date, Libellé, Imputation Dépenses, Recettes,
Type, N° Chèque, Emetteur, Catégorie, N° pièce, Mois

-----Message d'origine-----
J'ai essayé ta procédure, mais je n'arrives pas à
reproduire le problème.


Question, quels sont les noms de colonnes de ta base de
données ?


--
Gaetan Mourmant
www.polykromy.com
Consultation - Formation
Excel - Data mining

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

066101c36fe0$051eae00$
La procédure est effectivement valable lorsque l'on crée le
TCD "from scratch" - dans la foulée, au départ d'une
liste-source auto-dimensionnable. Elle ne marche plus
lorsque le TCD a été créé au départ d'une liste non
auto-dimmensionnable, c'est à dire unne liste où la plage
"Data" n'existe pas encore.
Je persiste donc et je signe...
Merci quand même...

-----Message d'origine-----
Salut,

Pour redéfinir la plage source une fois le TCD créé:

Tu cliques droit sur ton TCD. Tu choisis l'assistant
(Wizard en anglais).

Sur le premier panel, tu cliques sur "Précédent" (back en
anglais).

Le panel est désormais celui de la sélection de la plage.
Tu donnes la plage ÚTA
Tu cliques sur Terminer.

Salutations,

Daniel M.

"Stessels" wrote in message
news:063901c36fcd$d4288530$
Merci de votre réponse.
C'est effectivement la formule pour créer une liste-source
auto-redimensionnable... Cela marche très bien lorsque l'on
crée le TCD dans la foulée, mais cela ne marche
malheureusement plus lorsque la liste-source a déjà servi à
créer un TCD - soit AVANT que soit définie la plage
"Data"...



C'est tout mon problème, sans doute un problème de cache
interne à effacer ??

-----Message d'origine-----
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

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

06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste


.



.




.




.






Avatar
Céline Brien
Salut Alain,
Ta procédure événementielle, elle met à jour auto le TCD lors de l'ajout
d'une nouvelle ligne ? De l'ajout d'une colonne ? Un ou l'autre ?
Merci,
Céline

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

Pas grand chose à ajouter à ce qui a été dit sur la façon de nommer
dynamiquement la plage du tableau si ce n'est (comme tu as précisé le
nombre de

champs) la plage :
ÞCALER($A$1;;;NBVAL($A$1:$A$2000);NBVAL($A$1:$K$1))
(Etiquettes de colonnes en ligne 1)

Par contre, si tu veux la mise à jour auto du TCD, il faut passer par
une proc

évènementielle (xl2000)
Exemple avec tes données en A1:Kx et mise à jour du TCD si les 11
champs sont

renseignés (à adapter ?) :
Dans le module de la feuille :

Private Sub Worksheet_Change(ByVal zz As Range)
x = zz.Column: y = zz.Row: If x > 11 Then Exit Sub
If Application.CountA(Range(zz.Offset(0, -x + 1).Address & ":K" & y))
= 11 Then

_
ActiveSheet.PivotTables("LeNomDuTCD").RefreshTable
End Sub

AV

"Stessels" a écrit dans le message news:
009f01c36ff4$09e2d5b0$
Il s'agit d'une appli de gestion assez complexe et
parfaitement au point, mais qui exige une actualisation
"manuelle" à chaque nouvelle entrée de données, étant donné
qu'une liste auto-dimensionnable n'a pas été établie lors
de la conception. L'opération qqui n"exige guère que
quelques secondes n'est pas très gênante. Ma démarche
actuelle (histoire de peaufiner...),tente néanmoins de
transformer l'application pour rendre ce processus
entièrement automatique.
La liste comporte 11 colonnes, (dont la dernière est
calculée) et il ne me semble pas qu'Excel puisse confondre
deux colonnes au cours du recalcul. Les noms sont les
suivants ; Date, Libellé, Imputation Dépenses, Recettes,
Type, N° Chèque, Emetteur, Catégorie, N° pièce, Mois

-----Message d'origine-----
J'ai essayé ta procédure, mais je n'arrives pas à
reproduire le problème.


Question, quels sont les noms de colonnes de ta base de
données ?


--
Gaetan Mourmant
www.polykromy.com
Consultation - Formation
Excel - Data mining

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

066101c36fe0$051eae00$
La procédure est effectivement valable lorsque l'on crée le
TCD "from scratch" - dans la foulée, au départ d'une
liste-source auto-dimensionnable. Elle ne marche plus
lorsque le TCD a été créé au départ d'une liste non
auto-dimmensionnable, c'est à dire unne liste où la plage
"Data" n'existe pas encore.
Je persiste donc et je signe...
Merci quand même...

-----Message d'origine-----
Salut,

Pour redéfinir la plage source une fois le TCD créé:

Tu cliques droit sur ton TCD. Tu choisis l'assistant
(Wizard en anglais).

Sur le premier panel, tu cliques sur "Précédent" (back en
anglais).

Le panel est désormais celui de la sélection de la plage.
Tu donnes la plage ÚTA
Tu cliques sur Terminer.

Salutations,

Daniel M.

"Stessels" wrote in message
news:063901c36fcd$d4288530$
Merci de votre réponse.
C'est effectivement la formule pour créer une liste-source
auto-redimensionnable... Cela marche très bien lorsque l'on
crée le TCD dans la foulée, mais cela ne marche
malheureusement plus lorsque la liste-source a déjà servi à
créer un TCD - soit AVANT que soit définie la plage "Data"...
C'est tout mon problème, sans doute un problème de cache
interne à effacer ??

-----Message d'origine-----
Bonjour,
Titres des colonnes sur ligne 1
Aucune cellule vide dans les données de la colonne A
Menu Insertion, Nom, Définir.
Zone Noms dans le classeur : Data
Fait référence à :
ÞCALER(Data!$A$1;0;0;NBVAL(Data!$A:$A);NBVAL(Data!$1:$1))
Céline

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

06de01c36fbe$4be082e0$
Je m'efforce, sans succès, d'appliquer un champ dynamique
sur la liste-source d'un TCD EXISTANT.
Quelle que soit la manoeuvre, Excel me répond obstinément :
"Le nom du champ dynamique n'est pas valide.
Pour créer un tableau croisé dynamique, vous devez utiliser
des données sous forme de liste avec des étiquettes de
colonnes. Si vous changez le nom d'un champ dynamique, il
vous faut taper un nouveau nom pour le champ "
Ceci, entre nous, ne veut rien dire... Je veux bien taper
n'importe quoi, mais je ne comprends pas bien !!

Existe-t-il une solution pour recréer le TCD sans être
obligé de recommencer depuis le début le long et minutieux
processus de création de la liste


.



.




.









1 2 3