2009-10-01 13 views
2

Comment puis-je transposer des lignes et des colonnes dans Access 2003? J'ai plusieurs tables dont j'ai besoin pour le faire.Comment transposer des lignes et des colonnes dans Access 2003?

(je l'ai reformulé ma question parce que des commentaires me dit qu'il était source de confusion que je l'origine dit il.)

Chaque table a 30 champs et 20 dossiers.
Disons que mes champs sont Nom, Poids, Code postal, Qualité4, Qualité5, Qualité6 à Qualité30 qui est le film préféré. Supposons que les enregistrements décrivent chacun une personne. Les gens sont Alice, Betty, Chuck, Dave, Edward etc .. par Tommy

Je peux facilement faire un rapport comme celui-ci:

>>Alice...120....35055---etc, etc, etc...Jaws 
    Betty....125....35212...etc, etc, etc...StarWars 
    etc 
    etc 
    etc 
    Tommy...200...35213...etc, etc, etc...Adaptation 

Mais ce que je voudrais faire est transposent les lignes et les colonnes donc mon rapport affiche comme ceci

>>Alice........Betty......etc,etc,etc...Tommy 
    120.........125........etc, etc, etc...200 
    35055.....35212....etc, etc, etc...35213 
    etc 
    etc 
    etc 
    Jaws...StarWars..etc,etc,etc...Adaptation 

Merci pour toute aide.

+0

Juste enlevé le "transaction" tag, il n'y a aucune transaction impliquée ici ... – MartinStettner

Répondre

2

L'accès a réellement un verbe transposer, un tableau croisé. Vous trouverez de bonnes choses si vous recherchez "tableau croisé", qui est la façon la plus commune de la base de données de le dire. Comme ça Knowledge Base article. Les réponses de base de données génériques impliquent généralement de transposer et de résumer. Si vous avez besoin d'un tableau croisé non-récapitulatif, cela peut être fait, mais vous aurez probablement besoin d'une fonction personnalisée.

+0

Merci pour votre réponse. Je pense que je ne comprends pas bien. L'article de la Base de connaissances parle de la synthèse, mais tout ce que je veux faire est de transposer les lignes en colonnes et les colonnes en ligne. Je ne veux pas résumer. Sûrement cela doit être quelque chose que les gens font !! D'autres idées? (Je n'ai pas les compétences pour faire une fonction client.) Merci. –

+0

L'Assistant Analyse croisée vous guidera tout au long du processus. –

+0

Merci pour la 2e réponse. Mais j'ai peur de ne pas l'avoir. J'ai cherché et lu à propos de Crosstab et utilisé l'assistant Crosstab et je ne vois tout simplement pas comment transposer les choses - changer toutes mes lignes en colonnes et toutes mes colonnes en rangées. Pour reformuler ce que j'essaie de faire: j'ai besoin d'afficher mes 30 champs en lignes (au lieu de colonnes), et mes 20 en tant que colonnes (au lieu de lignes). Merci d'aider :) –

0
TRANSFORM SUM(Weight) 
SELECT "Dummy Data" 
FROM myTable 
GROUP BY "Dummy Data" 
PIVOT [Name] 

Cela aide-t-il?

EDIT: Ceci suppose que les noms ne se répéteront pas. C'est-à-dire qu'il n'y aura pas plus d'un enregistrement pour un nom donné.

+0

Merci pour la réponse. J'ai beaucoup, beaucoup plus de champs/colonnes que juste le nom et le poids, et beaucoup plus d'enregistrements/lignes. (J'ai plus de 20 noms uniques.) J'ai juste essayé de garder mon exemple très simple. Comment pourrais-je formuler votre requête si j'avais Field1 à Field30 et 20 noms uniques au lieu de seulement les champs Weight et Age. Pour reformuler, tout ce que j'essaie de faire est de transposer, c'est-à-dire, pour mon rapport, transformer mes 30 colonnes en 30 lignes et transformer mes 20 lignes en 30 colonnes. Merci pour ton aide. –

+0

Je veux dire transformer mes 20 lignes en 20 colonnes –

+0

S'il vous plaît modifier votre question pour décrire votre schéma réel avec les données de l'échantillon et la sortie attendue que vous aimeriez voir. Je vais essayer de voir, si cela peut être fait. Une fois que vous avez édité la question, postez vos commentaires ici pour que j'en prenne note. – shahkalpesh

2

Merci à tous pour votre aide.
Je crois avoir découvert la réponse, et je mets le lien ici au cas où quelqu'un d'autre a besoin dans l'avenir: http://support.microsoft.com/kb/202176
(Cela fonctionne pour Access 2003.)

+0

Laquelle des deux approches décrites ici avez-vous choisi? –

0

J'ai eu le même problème et à la fin j'ai recouru à l'exportation de la table vers Excel, faire la transposition, puis l'avoir réimportée dans Access.

Questions connexes