2011-01-07 2 views
3

J'ai quelque chose commene une « matrice » -table à une ligne pour chaque entrée dans Excel

1 2 3 
a x o x 
b x x o 
c o o o 

et que vous souhaitez la transformer en lignes comme

1 a x 
1 b x 
1 c x 
2 a o 
2 b x 
2 c o 
3 a x 
3 b o 
3 c o 

en utilisant une formule dans le document Excel. Jouer avec $ pour assigner des valeurs à chaque ligne et colonne me donne des résultats appropriés. Chaque fois que je dois faire quelques changements manuels à la formule. Tout indice pour l'écrire de la bonne façon?

Répondre

3

Supposons que votre matrice dans les cellules A1: D4

dans A6 mis:

=OFFSET($A$1;0;QUOTIENT(ROW()-ROW($A$6);3)+1) 

B6 put:

=OFFSET($A$1;MOD(ROW()-ROW($A$6);3)+1;0) 

en C6 mis:

=VLOOKUP($B6;$A$1:$D$4;MATCH($A6;$A$1:$D$1;0);FALSE) 

Den drag down (formules de copie) A6: C6 up à A14: C14

(je traduis mes formules de l'italien afin qu'il pourrait y avoir pépin)

PS: 3 dans les formules se réfère au nombre de lignes (et colonne) de l'exemple.

+0

merci beaucoup! Probalby le résout ;-) mais je dois le traduire avec les bonnes valeurs. Comme ma matrice est dans les cellules A1: X88, je suppose que "3" est "87". ce qui aiderait beaucoup, ce sont les formules avec des noms de variables qui n'écartent pas les valeurs. – skurt

+0

peut-être que j'ai mélangé quelque chose mais seulement les valeurs sur la diagonale (A1, B2, C3, D4) apparaissent alors il y a #NA – skurt

+0

3 est le nombre de lignes et de colonnes de la matrice. Pour déplacer les données, vous devez déplacer essentiellement tout le reste;) – momobo

Questions connexes