Na prvi pogled preprost problem z neočitno rešitvijo: izvlecite zadnjo besedo iz vrstice besedila. No, ali, v splošnem primeru, zadnji fragment, ločen z danim ločilnim znakom (presledek, vejica itd.) Z drugimi besedami, potrebno je izvesti obratno iskanje (od konca do začetka) v nizu dani znak in nato ekstrahirajte vse znake desno od njega.
Oglejmo si tradicionalno več načinov izbire: formule, makri in Power Query.
Metoda 1. Formule
Za lažje razumevanje bistva in mehanike formule začnimo malo od daleč. Najprej povečajmo število presledkov med besedami v izvornem besedilu na, na primer, 20 kosov. To lahko storite s funkcijo zamenjave. NAMESTITEV (ZAMENJAVA) in funkcija N-kratnega ponavljanja danega znaka – PONOVI (PONOVITEV):
Zdaj s funkcijo odrežemo 20 znakov od konca nastalega besedila PRAVICA (PRAV):
Postaja topleje, kajne? Ostaja še odstraniti dodatne presledke s funkcijo TRIM (OBREZI) in problem bo rešen:
V angleški različici bo naša formula videti takole:
=OBREŽI(DESNO(ZAMENJAJ(A1;» «;PONOVITE(» «;20));20))
Upam, da je jasno, da načeloma ni treba vstaviti natanko 20 presledkov – zadostuje poljubno število, če le presega dolžino najdaljše besede v izvornem besedilu.
In če je treba izvorno besedilo razdeliti ne s presledkom, temveč z drugim ločilnim znakom (na primer z vejico), bo treba našo formulo nekoliko popraviti:
Metoda 2. Makro funkcija
Nalogo izluščitve zadnje besede ali fragmenta iz besedila lahko rešimo tudi z makri, in sicer tako, da v Visual Basicu napišemo funkcijo povratnega iskanja, ki bo naredila tisto, kar potrebujemo – poiskala dani podniz v nizu v nasprotni smeri – od konec na začetek.
Pritisnite bližnjico na tipkovnici druga+F11 ali gumb Visual Basic tab razvijalec (Razvijalec)da odprete urejevalnik makrov. Nato dodajte nov modul prek menija Vstavi – Modul in tja kopirajte naslednjo kodo:
Funkcija LastWord(txt kot niz, izbirno ločilo kot niz = " ", izbirno n kot celo število = 1) kot niz arFragments = Split(txt, delim) LastWord = arFragments(UBound(arFragments) - n + 1) Končna funkcija
Zdaj lahko shranite delovni zvezek (v formatu, ki podpira makro!) in uporabite ustvarjeno funkcijo v naslednji sintaksi:
=ZadnjaBeseda(txt; ločilo; n)
Kje
- txt – celica z izvornim besedilom
- razmejiti — ločilni znak (privzeto — presledek)
- n – katera beseda mora biti izluščena s konca (privzeto – prva s konca)
Z morebitnimi spremembami v izvornem besedilu v prihodnosti bo naša makro funkcija sproti preračunana, kot katera koli standardna Excelova funkcija lista.
3. način. Power Query
poizvedba o moči je Microsoftov brezplačen dodatek za uvoz podatkov v Excel iz skoraj vseh virov in nato pretvorbo prenesenih podatkov v poljubno obliko. Moč in kul tega dodatka sta tako veliki, da je Microsoft privzeto vgradil vse njegove funkcije v Excel 2016. Za Excel 2010-2013 Power Query lahko brezplačno prenesete tukaj.
Našo nalogo ločevanja zadnje besede ali fragmenta prek danega ločila s pomočjo Power Query rešimo zelo enostavno.
Najprej spremenimo našo podatkovno tabelo v pametno tabelo z uporabo bližnjic na tipkovnici. Ctrl+T ali ukazi Domov – Oblikuj kot tabelo (Domov — Oblikuj kot tabelo):
Nato ustvarjeno »pametno tabelo« naložimo v Power Query z ukazom Iz tabele/razpona (Iz tabele/razpona) tab datum (če imate Excel 2016) ali na zavihku poizvedba o moči (če imate Excel 2010-2013):
V oknu urejevalnika poizvedb, ki se odpre, na zavihku Preoblikovanje (preobrazba) izberite ekipo Razdeli stolpec – z ločilom (Razdeli stolpec — z ločilom) in potem je treba nastaviti ločilni znak in izbrati možnost Skrajno desno ločiloda ne izrežem vseh besed, ampak samo zadnjo:
Po kliku OK zadnja beseda bo ločena v nov stolpec. Nepotreben prvi stolpec lahko odstranite tako, da z desno miškino tipko kliknete njegovo glavo in izberete odstrani (Izbriši). Prav tako lahko preimenujete preostali stolpec v glavi tabele.
Rezultate je mogoče naložiti nazaj na list z ukazom Domov — Zapri in naloži — Zapri in naloži na … (Domov — Zapri in naloži — Zapri in naloži v…):
In kot rezultat dobimo:
Takole – poceni in veselo, brez formul in makrov, skoraj brez dotikanja tipkovnice 🙂
Če se bo prvotni seznam v prihodnosti spremenil, bo dovolj desni klik ali uporaba bližnjice na tipkovnici Ctrl+druga+F5 posodobite našo zahtevo.
- Razdelitev lepljivega besedila v stolpce
- Razčlenjevanje in razčlenjevanje besedila z regularnimi izrazi
- Izločanje prvih besed iz besedila s funkcijo SUBSTITUTE