„Živá“ transpozice

Ošklivé slovo transpozice znamená zjednodušeně záměnu řádků za sloupce, jak je vidět v následujícím případě:

Druhou tabulku z té první dostaneme jednoduše tak, že si nejprve označíme a zkopírujeme do schránky (ctrl+c). Myší klikneme nebo šipkami najedeme do místa, kam budeme chtít novou tabulku vložit. Z nabídky Vložit jinak vybereme zatržítko transponovat a Excel se již postará o transpozici původní tabulky, tedy o záměnu sloupců za řádky.

Problém trochu je, že když změníme data v původní tabulce, v té transponované zůstane vše v původní podobě.

Pokud potřebujeme, aby i transponovaná tabulka byla „živá“, čili odrážela skutečnost v té původní tabulce, musíme na to jít jinak. Pomůžeme si maticovou funkcí transpozice, která nám provede vlastní transpozici a přitom zachová odkaz na původní buňky.

Postup v našem případě je následující:

  • nic neoznačujeme, pouze si zjistíme rozměry naší původní tabulky. V našem případě má tabulka 6 řádků a 9 sloupců.
  • Transponová tabulka tedy bude mít 9 řádků a 6 sloupců (vyměníme sloupce za řádky). Označíme si tedy prázdné buňky v rozměrech nové tabulky (tedy 9 řádků a 6 sloupců).
  • A napíšeme vzorec =transpozice(A1:I6).
  • Nyní pozor – pokud bychom po napsání vzorce stiskli klávesu Enter, Excel by nepoznal, že se jedná o tzv. maticový vzorec a vrátil by nám chybu. Aby Excel akceptoval tento vzorec, je zapotřebí jej vložit pomocí klávesové zkratky Ctrl+Shift+Enter. Všimněte si, že Excel nám poté označil náš vzorec složenými závorkami: {=TRANSPOZICE(A1:I6)}, které označují právě onen maticový vzorec.
  • Nu a nyní již pouze novou tabulku zformátujeme:

Můžete i vyzkoušet chování nových tabulek – do buňky B2 (prodej Jana Masláka v lednu 2014) zkusmo zapište jinou hodnotu. Jak je vidět i z následujícího obrázku, hodnota v transponované matici pomocí funkce vložit zůstala nezměněna, zatímco hodnota v tabulce vytvořené pomocí maticového vzorce se změnila (na obrázku označené červeně).

Zkušební příklad je k dispozici zde: blogExcel – transpozice

Napsat komentář