Ynhâldsopjefte
Yn 'e lêste pear artikels hawwe wy ferskate tekstfunksjes besprutsen - dyjingen dy't brûkt wurde om tekststrings te manipulearjen. Hjoed is ús fokus op de RIGHT-funksje, dy't is ûntworpen om in spesifisearre oantal karakters werom te jaan fan 'e rjochterkant fan in tekenrige. Lykas oare Excel-tekstfunksjes is RIGHT heul ienfâldich en rjochtlinich, lykwols hat it in pear ûnsichtbere gebrûk dy't nuttich wêze kinne yn jo wurk.
Excel RIGHT-funksjesyntaksis
De RIGHT-funksje yn Excel jout it opjûne oantal tekens werom fan it ein fan in tekststring.
De syntaksis fan de RIGHT-funksje is as folget:
RIGHT(tekst, [num_chars])Wêr :
- Tekst (fereaske) - de tekststring dêr't jo tekens út ekstrahearje wolle.
- Num_chars (opsjoneel) - de oantal karakters om te ekstrahearjen, begjinnend fan it meast rjochte karakter.
- As num_chars weilitten wurdt, wurdt 1 lêste karakter fan de tekenrige weromjûn (standert).
- As num_chars grutter is as it totale oantal fan tekens yn 'e tekenrige, wurde alle tekens weromjûn.
- As num_chars in negatyf getal is, jout in Rjochtsformule de #VALUE! flater.
Om bygelyks de lêste 3 tekens út 'e tekenrige yn sel A2 te ekstrahearjen, brûk dizze formule:
=RIGHT(A2, 3)
It resultaat kin der sa útsjen:
Wichtige opmerking! De Excel RIGHT-funksje jout altyd in tekst weromstring , sels as de oarspronklike wearde in getal is. Om in Rjochtsformule te twingen om in getal út te fieren, brûk it yn kombinaasje mei de WAARDE-funksje lykas yn dit foarbyld sjen litten.
Hoe kinne jo RIGHT-funksje brûke yn Excel - formulefoarbylden
Yn it echte libben wurkblêden, wurdt de Excel RIGHT-funksje selden op himsels brûkt. Yn 'e measte gefallen sille jo it tegearre mei oare Excel-funksjes brûke as ûnderdiel fan kompleksere formules.
Hoe kinne jo in substring krije dy't nei in bepaald teken komt
Yn gefal jo ekstrahearje wolle in substring dy't folget op in spesifyk karakter, brûk de funksje SEARCH of FIND om de posysje fan dat karakter te bepalen, subtract de posysje fan 'e totale tekenrige lingte weromjûn troch de LEN-funksje, en lûk safolle tekens fan 'e rjochterkant fan 'e oarspronklike tekenrige.
RJOCHTS( string , LEN( string ) - SEARCH( teken , string ))Litte wy sizze, sel A2 befettet de foar- en efternamme skieden troch in spaasje, en jo binne fan doel de efternamme nei in oare sel te lûken. Nim gewoan de generyske formule hjirboppe en jo sette A2 yn plak fan string , en " " (spaasje) yn tempo fan karakter:
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2))
De formule sil it folgjende resultaat opleverje:
Op in fergelykbere wize kinne jo in substring krije dy't elk oar karakter folget, bgl. in komma, puntkomma, keppelteken, ensfh. Om bygelyks in substring út te heljen dy't nei in keppelteken komt,brûk dizze formule:
=RIGHT(A2,LEN(A2)-SEARCH("-",A2))
It resultaat sil der sa útsjen:
Hoe kinne jo in substring ekstrahearje nei it lêste foarkommen fan it skiedingsteken
Wannear omgean mei komplekse snaren dy't ferskate foarkommens fan deselde skiedingsteken befetsje, moatte jo faaks de tekst rjochts fan it lêste skiedingsfoarfal weromhelje. Om dingen makliker te begripen, sjoch nei de folgjende boarnegegevens en it winske resultaat:
Sa't jo kinne sjen yn 'e skermprint hjirboppe, befettet Kolom A in list mei flaters. Jo doel is om de flaterbeskriuwing te lûken dy't komt nei de lêste kolon yn elke tekenrige. In ekstra komplikaasje is dat de orizjinele snaren kinne befetsje ferskillende oantallen delimiter eksimplaren, bgl. A3 befettet 3 kolons wylst A5 mar ien.
De kaai foar it finen fan in oplossing is bepale de posysje fan de lêste delimiter yn de boarne tekenrige (it lêste foarkommen fan in kolon yn dit foarbyld). Om dit te dwaan moatte jo in hantsjefol ferskate funksjes brûke:
- Krij it oantal skiedingstekens yn 'e oarspronklike tekenrige. It is in maklik diel:
- Earst berekkenje jo de totale lingte fan 'e tekenrige mei de LEN-funksje: LEN(A2)
- Twadens berekkenje jo de lingte fan 'e tekenrige sûnder skiedingstekens mei de SUBSTITUTE-funksje dy't alle foarkommen fan in kolon ferfangt mei neat: LEN(SUBSTITUTE(A2,":",""))
- Uteinlik lûke jo de lingte fan 'e oarspronklike tekenrige ôfsûnder skiedingstekens fan de totale tekenrige lingte: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))
Om te soargjen dat de formule goed wurket, kinne jo dizze ynfiere yn in aparte sel, en it resultaat sil 2 wêze, dat is it oantal kolons yn sel A2.
- Ferfange it lêste skiedingsteken troch wat unyk karakter. Om de tekst út te heljen dy't komt nei de lêste delimiter yn 'e tekenrige, moatte wy dat lêste foarkommen fan' e delimiter op ien of oare manier "markearje". Litte wy dêrfoar it lêste foarkommen fan in dûbele punt ferfange troch in karakter dat nergens yn 'e oarspronklike snaren foarkomt, bygelyks troch in pûnteken (#).
As jo bekend binne mei de syntaksis fan 'e Excel SUBSTITUTE-funksje, kinne jo ûnthâlde dat it it 4e opsjonele argumint (instance_num) hat dat allinich in spesifyk foarkommen fan it opjûne karakter ferfangt. En om't wy it oantal skiedingstekens yn 'e tekenrige al berekkene hawwe, leverje jo de boppesteande funksje gewoan yn it fjirde argumint fan in oare SUBSTITUTE-funksje:
=SUBSTITUTE(A2,":","#",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))
As jo dizze formule yn in aparte sel pleatse , it soe dizze tekenrige werombringe: ERROR:432#Ferbining time-out
- Krij de posysje fan it lêste skiedingsteken yn 'e tekenrige. Ofhinklik fan hokker karakter jo it lêste skiedingsteken ferfongen hawwe, brûke jo SEARCH of haadlettergefoelige FIND om de posysje fan dat karakter yn 'e tekenrige te bepalen. Wy ferfongen de lêste kolonmei it # teken, sadat wy de folgjende formule brûke om de posysje te finen:
=SEARCH("#", SUBSTITUTE(A2,":","#",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))
Yn dit foarbyld jout de formule 10 werom, dat is de posysje fan # yn 'e ferfongen tekenrige.
- Gean in substring werom nei rjochts fan it lêste skiedingsteken. No't jo de posysje fan 'e lêste delimiter yn in tekenrige kenne, hoege jo allinich dat getal ôf te trekken fan 'e totale tekenrige lingte, en krije de RIGHT-funksje om safolle tekens werom te jaan fan 'e ein fan 'e orizjinele tekenrige:
=RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":","")))))
Lykas werjûn yn it skermôfbylding hjirûnder, wurket de formule perfekt:
As jo wurkje mei in grutte dataset wêr't ferskate sellen ferskate skiedingstekens befetsje kinne, kinne jo wolle om de boppesteande formule yn 'e IFERROR-funksje yn te sluten om mooglike flaters foar te kommen:
=IFERROR(RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))), A2)
In gefal in bepaalde tekenrige gjin inkeld foarkommen fan 'e oantsjutte skiedingsteken befettet, sil de oarspronklike tekenrige weromjûn wurde, lykas yn rige 6 yn 'e skermôfbylding hjirûnder:
Hoe kinne jo de earste N karakters fan in tekenrige fuortsmite
Njonken it ekstrahearjen fan in substring út 'e ein fan in tekenrige, komt de Excel RIGHT-funksje goed fan pas yn situaasjes as jo in bepaald oantal tekens fan it begjin fan de tekenrige fuortsmite wolle.
Yn de dataset brûkt yn de foarige As foarbyld kinne jo it wurd "ERROR" ferwiderje dat oan it begjin fan elke tekenrige ferskynt en allinich it flaternûmer en beskriuwing litte. Om it te hawwendien, subtrahearje it oantal te ferwiderjen tekens fan 'e totale tekenrige lingte, en leverje dat nûmer oan it num_chars argumint fan 'e Excel RIGHT-funksje:
RIGHT( string , LEN ( string )- number_of_chars_to_remove )Yn dit foarbyld ferwiderje wy de earste 6 tekens (5 letters en in kolon) út de tekststring yn A2, dus ús formule giet as folget:
=RIGHT(A2, LEN(A2)-6)
Kin de Excel RIGHT-funksje in getal weromjaan?
Lykas neamd yn it begjin fan dizze tutorial, jout de RIGHT-funksje yn Excel altyd in tekststring sels as de oarspronklike wearde is in getal. Mar wat as jo wurkje mei in numerike dataset en wolle dat de útfier ek numerike is? In maklike oplossing is it nêstjen fan in Rjochts-formule yn 'e VALUE-funksje, dy't spesjaal is ûntworpen om in tekenrige dy't in nûmer fertsjintwurdiget te konvertearjen nei in getal. yn A2 en konvertearje de ekstrahearre karakters nei in nûmer, brûk dizze formule:
=VALUE(RIGHT(A2, 5))
De skermôfbylding hjirûnder lit it resultaat sjen - sjoch asjebleaft de rjochtsôfstimmingsnûmers yn kolom B, yn tsjinstelling ta lofts -aligned tekststrings yn kolom A:
Wêrom wurket de RIGHT-funksje net mei datums?
Sûnt de Excel RIGHT-funksje is ûntworpen om te wurkjen mei tekststrings, wylst datums wurde fertsjintwurdige troch sifers yn de ynterne Excel systeem, in Rjochts formule is net by steat om te heljen in yndividudiel fan in datum lykas in dei, moanne of jier. As jo besykje dit te dwaan, krije jo allinich in pear lêste sifers fan it nûmer dat in datum fertsjintwurdiget.
Stel, jo hawwe de datum 18-jan-2017 yn sel A1. As jo besykje it jier te ekstrahearjen mei de formule RJOCHTS(A1,4), soe it resultaat 2753 wêze, dat is de lêste 4 sifers fan nûmer 42753 dat 18 jannewaris 2017 yn it Excel-systeem stiet.
"Dus, hoe helje ik in bepaald diel fan in datum werom?", kinne jo my freegje. Troch ien fan de folgjende funksjes te brûken:
- DAY-funksje om in dei te ekstrahearjen: =DAY(A1)
- MONTH-funksje om in moanne te krijen: =MONTH(A1)
- YEAR-funksje om in jier te lûken: =YEAR(A1)
De folgjende skermôfbylding lit de resultaten sjen:
As jo datums wurde fertsjintwurdige troch tekststrings , wat faaks it gefal is as jo gegevens eksportearje fan in eksterne boarne, neat hinderet jo de RIGHT-funksje te brûken om de lêste pear tekens yn 'e tekenrige te lûken dy't in bepaald diel fan 'e datum fertsjintwurdigje:
Excel RIGHT funksje wurket net - redenen en oplossingen
As in rjochtsformule net goed wurket yn jo wurkblêd, komt it nei alle gedachten troch ien fan 'e folgjende redenen:
- Der is ien of mear folgjende spaasjes yn 'e orizjinele gegevens. Om fluch ekstra spaasjes yn sellen te ferwiderjen, brûk dan de Excel TRIM-funksje of de Cell Cleaner-add-in.
- It num_chars argumint is minder dan nul . Fanfansels wolle jo amper in negatyf getal yn jo formule pleatse, mar as it argumint num_chars wurdt berekkene troch in oare Excel-funksje of in kombinaasje fan ferskate funksjes en jo Rjochtsformule jout de #VALUE! flater, wês wis dat jo de nestele funksje(s) kontrolearje op flaters.
- De oarspronklike wearde is in datum . As jo dizze tutorial nau hawwe folge, wite jo al wêrom't de RIGHT-funksje net kin wurkje mei datums. As immen de foarige seksje oerslein hat, kinne jo folsleine details fine yn Wêrom de Excel RIGHT-funksje net wurket mei datums.
Dit is hoe't jo de RIGHT-funksje yn Excel brûke. Om de formules dy't yn dizze tutorial besprutsen binne tichterby te besjen, binne jo fan herte wolkom om ús foarbyldwurkboek hjirûnder te downloaden. Ik tankje jo foar it lêzen en hoopje jo nije wike op ús blog te sjen.
Beskikbere downloads
Excel RIGHT-funksje - foarbylden (.xlsx-bestân)