![](https://cdn.wiki-base.com/8050385/excel_formula_convert_string_to_array__2.png.webp)
Všeobecný vzorec
(=MID(string,ROW(INDIRECT("1:"&LEN(string))),1))
Zhrnutie
Ak chcete previesť reťazec na pole, ktoré obsahuje jednu položku pre každé písmeno, môžete použiť vzorec poľa založený na funkciách MID, ROW, LEN a INDIRECT. To môže byť niekedy užitočné vo vnútri iných vzorcov, ktoré manipulujú s textom na úrovni znakov.
V zobrazenom príklade je vzorec v C5:
(=MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1))
Poznámka: toto je vzorec poľa a musí sa zadávať pomocou klávesov Control + Shift + Enter.
Vysvetlenie
Pri práci zvnútra von funkcia LEN počíta dĺžku reťazca a toto je spojené zreťazením na „1:“, čím sa vytvorí textový rozsah takto: „1: 3“
Tento text sa odovzdá do INDIRECT, ktorý vyhodnotí text ako referenciu a vráti výsledok funkcii ROW. Funkcia ROW vráti riadky obsiahnuté v referencii v rade čísel, ako je tento:
(1;2;3)
Všimnite si, že pre každé písmeno v pôvodnom texte máme jedno číslo.
Toto pole vstupuje do funkcie MID pre argument start_num. Text pochádza zo stĺpca B a počet znakov je pevne nastavený na 1
Nakoniec s viacerými počiatočnými číslami vráti MID viac výsledkov v takomto poli.
("R";"e";"d")