Zadnja beseda

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):

Zadnja beseda

Zdaj s funkcijo odrežemo 20 znakov od konca nastalega besedila PRAVICA (PRAV):

Zadnja beseda

Postaja topleje, kajne? Ostaja še odstraniti dodatne presledke s funkcijo TRIM (OBREZI) in problem bo rešen:

Zadnja beseda

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:

Zadnja beseda

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)

Zadnja beseda

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):

Zadnja beseda

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):

Zadnja beseda

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:

Zadnja beseda

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…):

Zadnja beseda

In kot rezultat dobimo:

Zadnja beseda

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

Pustite Odgovori