Funcția Excel RIGHT cu exemple de formule

  • Imparte Asta
Michael Brown

În ultimele câteva articole, am discutat diferite funcții Text - cele care sunt utilizate pentru a manipula șiruri de text. Astăzi ne concentrăm asupra funcției RIGHT, care este concepută pentru a returna un număr specificat de caractere din partea cea mai din dreapta a unui șir de caractere. La fel ca alte funcții Text din Excel, RIGHT este foarte simplă și directă, cu toate acestea are câteva utilizări neobservate care s-ar putea dovedi utile înmunca ta.

    Sintaxa funcției Excel RIGHT

    Funcția RIGHT din Excel returnează numărul specificat de caractere de la sfârșitul unui șir de text.

    Sintaxa funcției RIGHT este următoarea:

    RIGHT(text, [num_chars])

    Unde:

    • Text (obligatoriu) - șirul de text din care doriți să extrageți caracterele.
    • Num_chars (opțional) - numărul de caractere care urmează să fie extrase, începând de la caracterul cel mai din dreapta.
      • Dacă num_chars este omis, se returnează ultimul caracter al șirului (implicit).
      • Dacă num_chars este mai mare decât numărul total de caractere din șirul de caractere, se returnează toate caracterele.
      • Dacă num_chars este un număr negativ, o formulă Right returnează eroarea #VALUE!.

    De exemplu, pentru a extrage ultimele 3 caractere din șirul de caractere din celula A2, utilizați această formulă:

    =RIGHT(A2, 3)

    Rezultatul ar putea arăta cam așa:

    Notă importantă! Funcția Excel RIGHT returnează întotdeauna un număr șir de text , chiar dacă valoarea originală este un număr. Pentru a forța o formulă Right să producă un număr, utilizați-o în combinație cu funcția VALUE, așa cum este demonstrat în acest exemplu.

    Cum se utilizează funcția RIGHT în Excel - exemple de formule

    În foile de lucru din viața reală, funcția Excel RIGHT este rareori utilizată de una singură. În cele mai multe cazuri, o veți utiliza împreună cu alte funcții Excel ca parte a unor formule mai complexe.

    Cum să obțineți un subșir care vine după un anumit caracter

    În cazul în care doriți să extrageți un subșir care urmează unui anumit caracter, utilizați fie funcția SEARCH, fie funcția FIND pentru a determina poziția acelui caracter, scădeți poziția din lungimea totală a șirului returnată de funcția LEN și extrageți atâtea caractere din partea cea mai din dreapta a șirului original.

    RIGHT( șir de caractere , LEN( șir de caractere ) - SEARCH( caracter , șir de caractere ))

    Să presupunem că celula A2 conține numele și prenumele separate de un spațiu, iar tu vrei să tragi numele de familie într-o altă celulă. Ia formula generică de mai sus și pune A2 în loc de șir de caractere , și " " (spațiu) în dreptul lui caracter:

    =RIGHT(A2,LEN(A2)-SEARCH(" ",A2)))

    Formula va da următorul rezultat:

    În mod similar, puteți obține un subșir care urmează după orice alt caracter, de exemplu, o virgulă, punct și virgulă, cratimă etc. De exemplu, pentru a extrage un subșir care vine după o cratimă, utilizați această formulă:

    =RIGHT(A2,LEN(A2)-SEARCH("-",A2))

    Rezultatul va fi asemănător cu acesta:

    Cum se extrage o substringă după ultima apariție a delimitatorului

    Atunci când aveți de-a face cu șiruri de caractere complexe care conțin mai multe apariții ale aceluiași delimitator, este posibil să aveți adesea nevoie să preluați textul din dreapta ultimei apariții a delimitatorului. Pentru a înțelege mai ușor lucrurile, uitați-vă la următoarele date sursă și la rezultatul dorit:

    După cum puteți vedea în captura de ecran de mai sus, coloana A conține o listă de erori. Scopul dvs. este de a extrage descrierea erorii care vine după ultimul punct comun din fiecare șir. O complicație suplimentară este că șirurile originale pot conține numere diferite de instanțe de delimitare, de exemplu, A3 conține 3 puncte de suspensie, în timp ce A5 conține doar unul.

    Cheia pentru a găsi o soluție este determinarea poziției ultimului delimitator din șirul sursă (ultima apariție a două puncte în acest exemplu). Pentru a face acest lucru, va trebui să utilizați o serie de funcții diferite:

    1. Obține numărul de delimitatori din șirul original. Este o parte ușoară:
      • În primul rând, se calculează lungimea totală a șirului folosind funcția LEN: LEN(A2)
      • În al doilea rând, se calculează lungimea șirului fără delimitatori folosind funcția SUBSTITUTE care înlocuiește toate aparițiile unui punct cu nimic: LEN(SUBSTITUTE(A2,":",""))
      • În cele din urmă, se scade lungimea șirului original fără delimitatori din lungimea totală a șirului: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))

      Pentru a vă asigura că formula funcționează corect, puteți să o introduceți într-o celulă separată, iar rezultatul va fi 2, care este numărul de două puncte din celula A2.

    2. Înlocuiți ultimul delimitator cu un caracter unic. Pentru a extrage textul care vine după ultimul delimitator din șirul de caractere, trebuie să "marcăm" această ultimă apariție a delimitatorului într-un anumit fel. În acest scop, să înlocuim ultima apariție a două puncte cu un caracter care nu apare nicăieri în șirurile originale, de exemplu cu un semn de lire sterline (#).

      Dacă sunteți familiarizați cu sintaxa funcției Excel SUBSTITUTE, vă amintiți că aceasta are al patrulea argument opțional (instance_num) care permite înlocuirea doar a unei anumite apariții a caracterului specificat. Și, din moment ce am calculat deja numărul de delimitatori din șirul de caractere, este suficient să furnizăm funcția de mai sus în al patrulea argument al unei alte funcții SUBSTITUTE:

      =SUBSTITUTE(A2,":", "#", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":",""))))

      Dacă ați pune această formulă într-o celulă separată, ar returna acest șir: ERROR:432#Conectarea a fost întreruptă.

    3. Obțineți poziția ultimului delimitator în șir. În funcție de caracterul cu care ați înlocuit ultimul delimitator, utilizați fie SEARCH, care nu ține cont de majuscule și minuscule, fie FIND, care ține cont de majuscule, pentru a determina poziția acelui caracter în șir. Noi am înlocuit ultimul semn două puncte cu semnul #, așa că vom utiliza următoarea formulă pentru a afla poziția acestuia:

      =SEARCH("#", SUBSTITUTE(A2,":",":", "#",LEN(A2)-LEN(SUBSTITUTE(A2,":",":",""))))

      În acest exemplu, formula returnează 10, care este poziția lui # în șirul înlocuit.

    4. Returnează o subșir la dreapta ultimului delimitator. Acum că știți poziția ultimului delimitator într-un șir de caractere, tot ce trebuie să faceți este să scădeți acest număr din lungimea totală a șirului și să obțineți funcția RIGHT pentru a returna numărul de caractere de la sfârșitul șirului original:

      =RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$","$",LEN(A2)-LEN(SUBSTITUTE(A2,":","","")))))

    După cum se arată în captura de ecran de mai jos, formula funcționează perfect:

    Dacă lucrați cu un set mare de date în care diferite celule pot conține delimitatori diferiți, este posibil să doriți să includeți formula de mai sus în funcția IFERROR pentru a preveni posibilele erori:

    =IFERROR(RIGHT(A2,LEN(A2)-SEARCH("$",SUBSTITUTE(A2,":","$","$",LEN(A2)-LEN(SUBSTITUTE(A2,":","",""))))), A2)

    În cazul în care un anumit șir de caractere nu conține o singură apariție a delimitatorului specificat, va fi returnat șirul original, ca în rândul 6 din imaginea de mai jos:

    Cum să eliminați primele N caractere dintr-un șir de caractere

    În afară de extragerea unui subșir de la sfârșitul unui șir de caractere, funcția Excel RIGHT este utilă în situațiile în care doriți să eliminați un anumit număr de caractere de la începutul șirului.

    În setul de date utilizat în exemplul anterior, este posibil să doriți să eliminați cuvântul "ERROR" care apare la începutul fiecărui șir și să lăsați doar numărul și descrierea erorii. Pentru a face acest lucru, scădeți numărul de caractere care trebuie eliminate din lungimea totală a șirului și furnizați acest număr la funcția num_chars argument al funcției Excel RIGHT:

    RIGHT( șir de caractere , LEN( șir de caractere )- număr_de_caractere_de_eliminat )

    În acest exemplu, eliminăm primele 6 caractere (5 litere și două puncte) din șirul de text din A2, astfel încât formula noastră este următoarea:

    =RIGHT(A2, LEN(A2)-6)

    Poate funcția Excel RIGHT să returneze un număr?

    După cum s-a menționat la începutul acestui tutorial, funcția RIGHT din Excel returnează întotdeauna un șir de text, chiar dacă valoarea originală este un număr. Dar ce se întâmplă dacă lucrați cu un set de date numerice și doriți ca și rezultatul să fie tot numeric? O soluție simplă este să înglobați o formulă Right în funcția VALUE, care este special concepută pentru a converti un șir de caractere reprezentând un număr într-un număr.

    De exemplu, pentru a extrage ultimele 5 caractere (codul poștal) din șirul din A2 și pentru a converti caracterele extrase într-un număr, utilizați această formulă:

    =VALOARE(DREAPTA(A2, 5))

    Captura de ecran de mai jos arată rezultatul - observați că numerele din coloana B sunt aliniate la dreapta, spre deosebire de șirurile de text aliniate la stânga din coloana A:

    De ce nu funcționează funcția RIGHT cu datele?

    Deoarece funcția RIGHT din Excel este concepută pentru a lucra cu șiruri de text, în timp ce datele sunt reprezentate de numere în sistemul intern Excel, o formulă Right nu poate prelua o parte individuală a unei date, cum ar fi ziua, luna sau anul. Dacă încercați să faceți acest lucru, tot ceea ce veți obține sunt câteva ultime cifre ale numărului care reprezintă o dată.

    Să presupunem că aveți data 18-ian-2017 în celula A1. Dacă încercați să extrageți anul cu formula RIGHT(A1,4), rezultatul ar fi 2753, care reprezintă ultimele 4 cifre din numărul 42753, care reprezintă 18 ianuarie 2017 în sistemul Excel.

    "Deci, cum recuperez o anumită parte a unei date?", mă puteți întreba. Folosind una dintre următoarele funcții:

    • Funcția DAY pentru a extrage o zi: =DAY(A1)
    • Funcția MONTH pentru a obține o lună: =MONTH(A1)
    • Funcția YEAR pentru a extrage un an: =YEAR(A1)

    Următoarea captură de ecran prezintă rezultatele:

    În cazul în care datele sunt reprezentate prin șiruri de text , ceea ce se întâmplă adesea atunci când exportați date dintr-o sursă externă, nimic nu vă împiedică să utilizați funcția RIGHT pentru a extrage ultimele câteva caractere din șirul de caractere care reprezintă o anumită parte a datei:

    Funcția Excel RIGHT nu funcționează - motive și soluții

    Dacă o formulă Right nu funcționează corect în foaia de calcul, cel mai probabil este din cauza unuia dintre următoarele motive:

    1. Există unul sau mai multe spații de urmărire Pentru a elimina rapid spațiile suplimentare din celule, utilizați fie funcția Excel TRIM, fie add-in-ul Cell Cleaner.
    2. The num_chars argumentul este mai puțin de zero Desigur, nu veți dori să introduceți intenționat un număr negativ în formula dvs. num_chars este calculat de o altă funcție Excel sau de o combinație de funcții diferite, iar formula Right returnează eroarea #VALUE!, asigurați-vă că verificați dacă există erori în funcția sau funcțiile imbricate.
    3. Valoarea inițială este un data Dacă ați urmărit îndeaproape acest tutorial, știți deja de ce funcția RIGHT nu poate funcționa cu date. Dacă cineva a sărit peste secțiunea anterioară, puteți găsi detalii complete în De ce funcția Excel RIGHT nu funcționează cu date.

    Acesta este modul în care se utilizează funcția RIGHT în Excel. Pentru a vedea mai îndeaproape formulele discutate în acest tutorial, vă invităm să descărcați exemplul nostru de registru de lucru de mai jos. Vă mulțumesc pentru lectură și sper să ne revedem pe blogul nostru săptămâna viitoare.

    Descărcări disponibile

    Funcția Excel RIGHT - exemple (fișier .xlsx)

    Michael Brown este un pasionat de tehnologie dedicat, cu o pasiune pentru simplificarea proceselor complexe folosind instrumente software. Cu mai mult de un deceniu de experiență în industria tehnologiei, el și-a perfecționat abilitățile în Microsoft Excel și Outlook, precum și în Google Sheets și Docs. Blogul lui Michael este dedicat împărtășirii cunoștințelor și experienței sale cu alții, oferind sfaturi și tutoriale ușor de urmat pentru îmbunătățirea productivității și eficienței. Indiferent dacă sunteți un profesionist experimentat sau un începător, blogul lui Michael oferă informații valoroase și sfaturi practice pentru a profita la maximum de aceste instrumente software esențiale.