Fjala e fundit

Një problem i thjeshtë, në shikim të parë, me një zgjidhje jo të dukshme: nxjerr fjalën e fundit nga një rresht teksti. Epo, ose, në rastin e përgjithshëm, fragmenti i fundit, i ndarë me një karakter të caktuar kufizues (hapësirë, presje, etj.) Me fjalë të tjera, është e nevojshme të zbatohet një kërkim i kundërt (nga fundi në fillim) në vargun e një karakterin e dhënë dhe më pas nxirrni të gjitha karakteret në të djathtë të tij.

Le të shohim disa mënyra tradicionale për të zgjedhur: formula, makro dhe përmes Power Query.

Metoda 1. Formulat

Për ta bërë më të lehtë të kuptojmë thelbin dhe mekanikën e formulës, le të fillojmë pak nga larg. Së pari, le të rrisim numrin e hapësirave midis fjalëve në tekstin tonë burimor, për shembull, në 20 copë. Këtë mund ta bëni me funksionin e zëvendësimit. ZUBVENDITSUESI (ZËVENDËSUES) dhe funksioni i përsëritjes së një karakteri të caktuar N-herë - REPEAT (REPT):

Fjala e fundit

Tani kemi prerë 20 karaktere nga fundi i tekstit që rezulton duke përdorur funksionin E DREJTA (E DREJTA):

Fjala e fundit

Po bëhet më e ngrohtë, apo jo? Mbetet për të hequr hapësirat shtesë duke përdorur funksionin TRIM (TRIM) dhe problemi do të zgjidhet:

Fjala e fundit

Në versionin anglisht, formula jonë do të duket si kjo:

=TRIM(DJATHTA(ZËVENDËSIM(A1;» «;REPT(» «;20));20))

Shpresoj se është e qartë se në parim nuk është e nevojshme të futen saktësisht 20 hapësira - çdo numër do të bëjë, për sa kohë që është më shumë se gjatësia e fjalës më të gjatë në tekstin burimor.

Dhe nëse teksti burimor duhet të ndahet jo me një hapësirë, por me një karakter tjetër ndarës (për shembull, me presje), atëherë formula jonë do të duhet të korrigjohet pak:

Fjala e fundit

Metoda 2. Funksioni makro

Detyra e nxjerrjes së fjalës ose fragmentit të fundit nga teksti mund të zgjidhet gjithashtu duke përdorur makro, përkatësisht, duke shkruar një funksion kërkimi të kundërt në Visual Basic që do të bëjë atë që na nevojitet - të kërkojmë një nënvarg të caktuar në një varg në drejtim të kundërt - nga fundi në fillim.

Shtypni shkurtoren e tastierës Ndalet+F11 ose butoni Visual Basic tab zhvillues (Zhvilluesi)për të hapur redaktorin makro. Më pas shtoni një modul të ri përmes menysë Insert – Moduli dhe kopjoni kodin e mëposhtëm atje:

 Funksioni LastWord(txt Si varg, Delim opsional As String = " ", Opsionale n Si Integer = 1) As String arFragments = Split(txt, delim) LastWord = arFragments(UBound(arFragments) - n + 1) Funksioni Fund  

Tani mund ta ruani librin e punës (në një format të aktivizuar makro!) dhe të përdorni funksionin e krijuar në sintaksën e mëposhtme:

=Fjala e fundit(txt; delim; n)

ku

  • txt – qeliza me tekstin burimor
  • delim - karakteri ndarës (parazgjedhja - hapësira)
  • n - cila fjalë duhet të nxirret nga fundi (si parazgjedhje - e para nga fundi)

Fjala e fundit

Me çdo ndryshim në tekstin burimor në të ardhmen, funksioni ynë makro do të rillogaritet menjëherë, si çdo funksion standard i fletës Excel.

Metoda 3. Query Power

Kërkesa e energjisë është një shtesë falas nga Microsoft për importimin e të dhënave në Excel nga pothuajse çdo burim dhe më pas transformimin e të dhënave të shkarkuara në çdo formë. Fuqia dhe freskia e kësaj shtese është aq e madhe sa Microsoft i ka ndërtuar të gjitha veçoritë e tij në Excel 2016 si parazgjedhje. Për Excel 2010-2013 Power Query mund të shkarkohet falas nga këtu.

Detyra jonë për të ndarë fjalën ose fragmentin e fundit përmes një ndarësi të caktuar duke përdorur Power Query zgjidhet shumë lehtë.

Së pari, le ta kthejmë tabelën tonë të të dhënave në një tabelë të zgjuar duke përdorur shkurtoret e tastierës. Ctrl+T ose komandat Faqja kryesore – Formatoni si tabelë (Shtëpia - Formatoni si tabelë):

Fjala e fundit

Pastaj ngarkojmë "tabelën inteligjente" të krijuar në Power Query duke përdorur komandën Nga tabela/gama (Nga tabela/gama) tab Data (nëse keni Excel 2016) ose në skedën Kërkesa e energjisë (nëse keni Excel 2010-2013):

Fjala e fundit

Në dritaren e redaktuesit të pyetjeve që hapet, në skedën Transformim (Transformo) zgjidhni një ekip Shtylla e ndarë - Nga kufizuesi (Ndarja e kolonës - sipas kufizuesit) dhe pastaj mbetet për të vendosur karakterin ndarës dhe për të zgjedhur opsionin Kufizuesi më i djathtëpër të prerë jo të gjitha fjalët, por vetëm të fundit:

Fjala e fundit

Pas klikimit OK fjala e fundit do të ndahet në një kolonë të re. Kolona e parë e panevojshme mund të hiqet duke klikuar me të djathtën në kokën e saj dhe duke zgjedhur Heq (Fshi). Ju gjithashtu mund të riemërtoni kolonën e mbetur në kokën e tabelës.

Rezultatet mund të ngarkohen përsëri në fletë duke përdorur komandën Faqja kryesore — Mbyll dhe ngarko — Mbylle dhe ngarko te… (Shtëpia - Mbyll & Ngarko - Mbylle & Ngarko për…):

Fjala e fundit

Dhe si rezultat marrim:

Fjala e fundit

Si kjo - e lirë dhe e gëzuar, pa formula dhe makro, pothuajse pa prekur tastierën 🙂

Nëse lista origjinale ndryshon në të ardhmen, do të mjaftojë të klikoni me të djathtën ose të përdorni një shkurtore të tastierës Ctrl+Ndalet+F5 përditësoni kërkesën tonë.


  • Ndarja e tekstit ngjitës në kolona
  • Parimi dhe analizimi i tekstit me shprehje të rregullta
  • Nxjerrja e fjalëve të para nga teksti me funksionin ZËVENDËSIM

Lini një Përgjigju