
Obecný vzorec
(=TRANSPOSE(IF(rng="","",rng)))
souhrn
Chcete-li dynamicky transponovat tabulku, která obsahuje mezery, můžete použít vzorec pole založený na funkci TRANSPOSE a funkci IF. V zobrazeném příkladu je vzorec pole více buněk v H5: I9:
(=TRANSPOSE(IF(B5:F6="","",B5:F6)))
Poznámka: jedná se o maticový vzorec, který musí být zadán pomocí kláves Control + Shift + Enter v celém rozsahu H5: I9, s výjimkou Excel 365.
Vysvětlení
Funkce TRANSPOSE automaticky převádí hodnoty v horizontální orientaci do vertikální orientace a naopak.
Pokud je však zdrojová buňka prázdná (prázdná), funkce TRANSPOSE vygeneruje nulu. Chcete-li tento problém vyřešit, obsahuje tento vzorec funkci IF, která nejprve zkontroluje, zda je buňka prázdná nebo ne. Když je buňka prázdná, funkce IF dodala prázdný řetězec ("") k transpozici. Pokud ne, IF dodává hodnotu normálně.
Bez IF vypadá pole přecházející do TRANSPOSE takto:
("Item","apples","pears","limes",0;"Qty",14,10,4,0)
Po IF to vypadá takto:
("Item","apples","pears","limes","";"Qty",14,10,4,"")