
Obecný vzorec
(=MID(string,ROW(INDIRECT("1:"&LEN(string))),1))
souhrn
Chcete-li převést řetězec na pole, které obsahuje jednu položku pro každé písmeno, můžete použít vzorec pole založený na funkcích MID, ROW, LEN a INDIRECT. To může být někdy užitečné v jiných vzorcích, které manipulují s textem na úrovni znaků.
V zobrazeném příkladu je vzorec v C5:
(=MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1))
Poznámka: toto je maticový vzorec a musí být zadán pomocí kláves Control + Shift + Enter.
Vysvětlení
Při práci zevnitř ven funkce LEN vypočítá délku řetězce a toto je spojeno zřetězením s „1:“, čímž se vytvoří textový rozsah takto: „1: 3“
Tento text je předán do INDIRECT, který vyhodnotí text jako odkaz a vrátí výsledek funkci ROW. Funkce ROW vrací řádky obsažené v odkazu v řadě čísel, jako je tato:
(1;2;3)
Všimněte si, že pro každé písmeno v původním textu máme jedno číslo.
Toto pole jde do funkce MID pro argument start_num. Text pochází ze sloupce B a počet znaků je pevně zakódován jako 1
Nakonec MID s více počátečními čísly vrátí více výsledků v takovém poli.
("R";"e";"d")