Cross table avec du texte au centre?

Le
Chichile
Bonjour,

Une question maintes fois posée et pourtant je ne trouve pas de
réponse claire sur le forum

J'ai une feuille de données avec les titres en colonnes. Comment
obtenir l'équivalent d'un tableau croisé dynamique avec du texte dans
la partie centrale ?
C'est possible en Access dans la vue « Pivot table » des requêtes,
mais en Excel il me semble que ce n'est pas possible d'utiliser un TCD
pour du texte. Pourriez-vous m'expliquer comment procéder dans Excel ?
Un grand merci et une bonne journée !
Cécile
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #4624241
bonjour Céline,

il faut mettre ce champ en champ de donnée à "Nombre de " et également en champ de ligne

je t'ai mis un exemple ici : http://cjoint.com/?htqTcZdila

isabelle

Bonjour,

Une question maintes fois posée et pourtant je ne trouve pas de
réponse claire sur le forum...

J'ai une feuille de données avec les titres en colonnes. Comment
obtenir l'équivalent d'un tableau croisé dynamique avec du texte dans
la partie centrale ?
C'est possible en Access dans la vue « Pivot table » des requêtes,
mais en Excel il me semble que ce n'est pas possible d'utiliser un TCD
pour du texte. Pourriez-vous m'expliquer comment procéder dans Excel ?
Un grand merci et une bonne journée !
Cécile



JB
Le #4623761
Bonsoir,

On veut transformer les colonnes en matrice:

-Sélectionner G8:I10
=SI(ESTNA(EQUIV(1;(nom=$F9)*(question=G$8);
0));"";INDEX(réponse;EQUIV(1;(nom=$F9)*(question=G$8);0)))
Valider avec maj+Ctrl+Entrée

http://boisgontierjacques.free.fr/fichiers/Matriciel/MatricielTransformeCol onnesMatrice.xls

JB

On 19 juil, 12:06, Chichile
Bonjour,

Une question maintes fois posée et pourtant je ne trouve pas de
réponse claire sur le forum...

J'ai une feuille de données avec les titres en colonnes. Comment
obtenir l'équivalent d'un tableau croisé dynamique avec du texte dans
la partie centrale ?
C'est possible en Access dans la vue « Pivot table » des requêtes,
mais en Excel il me semble que ce n'est pas possible d'utiliser un TCD
pour du texte. Pourriez-vous m'expliquer comment procéder dans Excel ?
Un grand merci et une bonne journée !
Cécile


Chichile
Le #4866741
Bonjour,

C'est bien la solution matricielle qui me convient. Merci !

Par contre, une question à ce sujet (je n'ai jamais eu l'occasion de
travailler avec les matrices dans Excel) : quand je reproduis la
formule suggérée chez moi dans la barre de formules après avoir
sélectionné un range de cellules, puis que je pousse maj ctl enter, il
prend les références de cellules comme des références absolues (dans
l'exemple joint (nom=$F9) reste partout (nom=$F9) : $F9 ne change pas
selon la position de la cellule comme on le voudrait $F10, $F11 etc).

Est-ce que je procède mal ? Si vous aviez une suggestion, ce serait
bien ...
Merci d'avance !
Cécile
Chichile
Le #4866451
Problème résolu, pour info...

Cliquer dans la première cellule de la plage G9:l11(et non G8:I10), y
mettre cette formule, valider par ctrl-maj-enter, puis copier cette
première cellule sur tout le reste de la plage G9:l11.
Comme ça c'est OK chez moi !

Ceci dit avec mon tableau de plus de 10000 lignes, ça coince déjà...
"Calculating cells...:-( "
JB
Le #4866111
Dans ce cas, utiliser une macro:

On veut transformer les colonnes en matrice
Sub convert()
For Each c In Range("A2", [A65000].End(xlUp))
y = Application.Match(c, [F9:f11], 0)
x = Application.Match(c.Offset(0, 1), [g8:i8], 0)
If Not IsError(x) And Not IsError(y) Then
[F8].Offset(y, x) = c.Offset(0, 2)
End If
Next c
End Sub

http://cjoint.com/?huqX0Z30YN

JB


On 20 juil, 14:38, Chichile
Problème résolu, pour info...

Cliquer dans la première cellule de la plage G9:l11(et non G8:I10), y
mettre cette formule, valider par ctrl-maj-enter, puis copier cette
première cellule sur tout le reste de la plage G9:l11.
Comme ça c'est OK chez moi !

Ceci dit avec mon tableau de plus de 10000 lignes, ça coince déjà...
"Calculating cells...:-( "


JB
Le #4866101
Dans ce cas, utiliser VBA:

http://cjoint.com/?huqX0Z30YN

Sub convert()
For Each c In Range("A2", [A65000].End(xlUp))
y = Application.Match(c, [F9:f11], 0)
x = Application.Match(c.Offset(0, 1), [g8:i8], 0)
If Not IsError(x) And Not IsError(y) Then
[F8].Offset(y, x) = c.Offset(0, 2)
End If
Next c
End Sub

JB
On 20 juil, 14:38, Chichile
Problème résolu, pour info...

Cliquer dans la première cellule de la plage G9:l11(et non G8:I10), y
mettre cette formule, valider par ctrl-maj-enter, puis copier cette
première cellule sur tout le reste de la plage G9:l11.
Comme ça c'est OK chez moi !

Ceci dit avec mon tableau de plus de 10000 lignes, ça coince déjà...
"Calculating cells...:-( "


Chichile
Le #4864011
Un grand merci pour les solutions VBA. Je vais essayer ça tout de
suite.
Bonne journée.
Cécile
Publicité
Poster une réponse
Anonyme