Iskanje zadnjega presledka v besednem nizu

Pomoč pri delu z MS Excelom
Odgovori
mb
Prispevkov: 57
Pridružen: Sr Okt 26, 2005 7:40 pm

Iskanje zadnjega presledka v besednem nizu

Odgovor Napisal/-a mb »

Pozdravljeni,

zanima me kako naj najdem pozicijo zadnjega presledka v nekem besednem nizu. Torej iščem zadnji presledek iz leve proti desni v nekem besednem nizu oziroma prvi presledek iz desne proti levi.

V besednih nizih je različno št. besed in posledično tudi presledkov. Mene zanima tekst, ki se nahaja od zadnjega presledka in do konca niza.

Hvala in LP
Boštjan
admin
Site Admin
Prispevkov: 3692
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

:) Bi si mislili, da je to v Excelu preprosto; pa na žalost ni. v VBA-ju lahko niz obrnete in v obrnjenem nizu najdete prvi presledek, ki je posledično zadnji presledek, ko niz zopet obrnete nazaj.... No kakorkoli v Excelu pa z vgrajenimi funkcijami to ni tako preprosto. Spodaj imate napisano formulo, ki naredi to kar želite. Formula je velika in zapletena; toda naredi natanko to kar potrebujete (originalni tekst je seveda v celici A1):

Koda: Izberi vse

=MID(A1;FIND("^^";SUBSTITUTE(" "&A1;" ";"^^";LEN(" "&A1)-LEN(SUBSTITUTE(" "&A1;" ";""))))-1+1;1024)
Hm.. razlaga.. Če pogledate formulo natančno boste videli, da globoko v formuli najprej iz niza izbrišete vse presledke in njegovo dolžino primerjate z originalno dolžino - s tem dobite število presledkov. Nadalje zadnji presledek zamenjate z edinstvenim nizom znakov (^^) in iz tako dobljenega niza odrežete vse kar se nahaja za tem posebnim nizom - to je zadna beseda!
lp,
Matjaž Prtenjak
Administrator
mb
Prispevkov: 57
Pridružen: Sr Okt 26, 2005 7:40 pm

Odgovor Napisal/-a mb »

Hvala deluje!
Odgovori