Funció Excel RIGHT amb exemples de fórmules

  • Comparteix Això
Michael Brown

En els últims articles, hem parlat de diferents funcions de text, les que s'utilitzen per manipular cadenes de text. Avui ens centrem en la funció RIGHT, que està dissenyada per retornar un nombre especificat de caràcters des de l'extrem dret d'una cadena. Igual que altres funcions de text d'Excel, RIGHT és molt senzill i senzill, però té uns quants usos poc evidents que poden resultar útils en el vostre treball.

    Sintaxi de la funció Excel RIGHT

    La funció RIGHT a Excel retorna el nombre especificat de caràcters des del final d'una cadena de text.

    La sintaxi de la funció RIGHT és la següent:

    RIGHT(text, [num_chars])

    On :

    • Text (obligatori) - la cadena de text de la qual voleu extreure caràcters.
    • Núm_caràcters (opcional) - el nombre de caràcters a extreure, començant pel caràcter més a la dreta.
      • Si s'omet num_cars , es retorna 1 darrer caràcter de la cadena (per defecte).
      • Si num_cars és superior al nombre total de caràcters de la cadena, es retornen tots els caràcters.
      • Si num_cars és un nombre negatiu, una fórmula correcta retorna el #VALOR! error.

    Per exemple, per extreure els darrers 3 caràcters de la cadena de la cel·la A2, utilitzeu aquesta fórmula:

    =RIGHT(A2, 3)

    El resultat podria semblar semblant a això:

    Nota important! La funció DRET d'Excel sempre retorna un textstring , fins i tot si el valor original és un número. Per forçar una fórmula correcta a sortir un nombre, utilitzeu-la en combinació amb la funció VALOR tal com es mostra en aquest exemple.

    Com utilitzar la funció DRET a Excel - exemples de fórmules

    En la vida real fulls de treball, la funció Excel RIGHT rarament s'utilitza per si sola. En la majoria dels casos, l'utilitzareu juntament amb altres funcions d'Excel com a part de fórmules més complexes.

    Com obtenir una subcadena que ve després d'un caràcter determinat

    En cas que vulgueu extreure'l una subcadena que segueix un caràcter específic, utilitzeu la funció SEARCH o FIND per determinar la posició d'aquest caràcter, resteu la posició de la longitud total de la cadena retornada per la funció LEN i traieu tants caràcters del costat més dret de la cadena original.

    DRET( cadena , LEN( cadena ) - CERCAR( caràcter , cadena ))

    Diguem, cel·la A2 conté el nom i el cognom separats per un espai, i l'objectiu és tirar el cognom a una altra cel·la. Només cal que prengueu la fórmula genèrica anterior i poseu A2 en lloc de cadena i " " (espai) al ritme de caràcter:

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

    La fórmula donarà el resultat següent:

    De manera similar, podeu obtenir una subcadena que segueixi qualsevol altre caràcter, p. una coma, un punt i coma, un guionet, etc. Per exemple, per extreure una subcadena que ve després d'un guionet,utilitzeu aquesta fórmula:

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

    El resultat serà semblant a aquest:

    Com extreure una subcadena després de l'última ocurrència del delimitador

    Quan tractant amb cadenes complexes que contenen diverses ocurrències del mateix delimitador, sovint haureu de recuperar el text a la dreta de l'última ocurrència del delimitador. Per facilitar la comprensió de les coses, mireu les dades d'origen següents i el resultat desitjat:

    Com podeu veure a la captura de pantalla anterior, la columna A conté una llista d'errors. El vostre objectiu és extreure la descripció de l'error que ve després dels últims dos punts de cada cadena. Una complicació addicional és que les cadenes originals poden contenir diferents nombres d'instàncies delimitadores, p. A3 conté 3 dos punts mentre que A5 només un.

    La clau per trobar una solució és determinar la posició de l'últim delimitador a la cadena d'origen (l'última ocurrència de dos punts en aquest exemple). Per fer-ho, haureu d'utilitzar un grapat de funcions diferents:

    1. Obtenir el nombre de delimitadors de la cadena original. És una part fàcil:
      • En primer lloc, calculeu la longitud total de la cadena mitjançant la funció LEN: LEN(A2)
      • En segon lloc, calculeu la longitud de la cadena sense delimitadors utilitzant el Funció SUBSTITUTE que substitueix totes les aparicions de dos punts per res: LEN(SUBSTITUTE(A2,":",""))
      • Finalment, resta la longitud de la cadena originalsense delimitadors de la longitud total de la cadena: LEN(A2)-LEN(SUBSTITUTE(A2,":",""))

      Per assegurar-vos que la fórmula funciona correctament, podeu introduir-la en un cel·la separada i el resultat serà 2, que és el nombre de dos punts a la cel·la A2.

    2. Substituïu l'últim delimitador per algun caràcter únic. Per extreure el text que ve després de l'últim delimitador de la cadena, hem de "marcar" l'aparició final del delimitador d'alguna manera. Per a això, substituïm l'última aparició de dos punts per un caràcter que no apareix en cap lloc de les cadenes originals, per exemple amb un signe de lletra (#).

      Si esteu familiaritzat amb la sintaxi de la funció SUBSTITUT d'Excel, potser recordeu que té el quart argument opcional (núm_instància) que permet substituir només una ocurrència específica del caràcter especificat. I com que ja hem calculat el nombre de delimitadors de la cadena, simplement proporcioneu la funció anterior al quart argument d'una altra funció SUBSTITUTE:

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

      Si poseu aquesta fórmula en una cel·la separada , retornaria aquesta cadena: ERROR:432#Connection timed out

    3. Obtenir la posició de l'últim delimitador de la cadena. Depenent del caràcter amb què hagis substituït l'últim delimitador, fes servir SEARCH que no distingeix entre majúscules i minúscules o FIND per determinar la posició d'aquest caràcter a la cadena. Hem substituït els darrers dos puntsamb el signe #, de manera que fem servir la fórmula següent per esbrinar-ne la posició:

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

      En aquest exemple, la fórmula retorna 10, que és la posició de # a la cadena substituïda.

    4. Retorna una subcadena a la dreta de l'últim delimitador. Ara que coneixeu la posició de l'últim delimitador d'una cadena, tot el que heu de fer és restar aquest nombre de la longitud total de la cadena i obtenir la funció DRET per retornar tants caràcters del final de la cadena original:

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

    Com es mostra a la captura de pantalla següent, la fórmula funciona perfectament:

    Si esteu treballant amb un conjunt de dades gran on diferents cel·les poden contenir diferents delimitadors, és possible que vulgueu per incloure la fórmula anterior a la funció IFERROR per evitar possibles errors:

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

    En cas que una determinada cadena no contingui una sola ocurrència del delimitador especificat, es retornarà la cadena original, com a la fila 6 de la captura de pantalla següent:

    Com eliminar els primers N caràcters d'una cadena

    A més d'extreure una subcadena del final d'una cadena, la funció DRET d'Excel és útil en situacions en què voleu eliminar un nombre determinat de caràcters del principi de la cadena.

    Al conjunt de dades utilitzat a l'anterior Per exemple, és possible que vulgueu eliminar la paraula "ERROR" que apareix a l'inici de cada cadena i deixar només el número i la descripció de l'error. Per tenir-lofet, resteu el nombre de caràcters que cal eliminar de la longitud total de la cadena i proporcioneu aquest nombre a l'argument num_chars de la funció DRET d'Excel:

    DRET( cadena , LEN ( cadena )- nombre_de_caracters_a_eliminar )

    En aquest exemple, traiem els primers 6 caràcters (5 lletres i dos punts) de la cadena de text en A2, de manera que la nostra fórmula és com següent:

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

    La funció DRET d'Excel pot tornar un número? si el valor original és un nombre. Però, què passa si treballeu amb un conjunt de dades numèrics i voleu que la sortida també sigui numèrica? Una solució fàcil és niar una fórmula correcta a la funció VALOR, que està especialment dissenyada per convertir una cadena que representa un nombre en un nombre.

    Per exemple, per extreure els darrers 5 caràcters (codi postal) de la cadena. a A2 i convertiu els caràcters extrets en un nombre, utilitzeu aquesta fórmula:

    =VALUE(RIGHT(A2, 5))

    La captura de pantalla següent mostra el resultat; tingueu en compte els números alineats a la dreta a la columna B, en lloc de l'esquerra. -cadenes de text alineades a la columna A:

    Per què la funció DRET no funciona amb dates?

    Com que la funció DRET d'Excel està dissenyada per funcionar amb cadenes de text, mentre que les dates es representen amb números a el sistema Excel intern, una fórmula correcta no pot recuperar un individupart d'una data com ara un dia, un mes o un any. Si intenteu fer-ho, només obtindreu uns quants darrers dígits del número que representen una data.

    Suposem que teniu la data 18-gen-2017 a la cel·la A1. Si intenteu extreure l'any amb la fórmula DRET(A1,4), el resultat seria 2753, que són els últims 4 dígits del número 42753 que representa el 18 de gener de 2017 al sistema Excel.

    "Així, com puc recuperar una part determinada d'una data?", em preguntes. Mitjançant una de les funcions següents:

    • Funció DIA per extreure un dia: =DIA(A1)
    • Funció MES per obtenir un mes: =MES(A1)
    • Funció YEAR per extreure un any: =YEAR(A1)

    La captura de pantalla següent mostra els resultats:

    Si les vostres dates estan representades per cadenes de text , que sovint passa quan exporteu dades des d'una font externa, res no us impedeix utilitzar la funció DRET per extreure els últims caràcters de la cadena que representen una part determinada de la data:

    Excel DRET la funció no funciona: raons i solucions

    Si una fórmula correcta no funciona correctament al vostre full de treball, el més probable és que sigui per un dels motius següents:

    1. Hi ha un o més espais finals a les dades originals. Per eliminar ràpidament espais addicionals a les cel·les, utilitzeu la funció EXCEL TRIM o el complement Cell Cleaner.
    2. L'argument num_chars és menys de zero . DePer descomptat, difícilment voldreu posar un nombre negatiu a la vostra fórmula a propòsit, però si l'argument num_chars el calcula una altra funció d'Excel o una combinació de funcions diferents i la vostra fórmula correcta retorna el #VALOR! error, assegureu-vos de comprovar si hi ha errors a les funcions imbricades.
    3. El valor original és una data . Si heu seguit de prop aquest tutorial, ja sabeu per què la funció DRET no pot funcionar amb dates. Si algú es va saltar la secció anterior, podeu trobar tots els detalls a Per què la funció DRET d'Excel no funciona amb les dates.

    Així és com feu servir la funció DRET a Excel. Per veure amb més detall les fórmules que es discuteixen en aquest tutorial, us convidem a descarregar el nostre quadern de treball de mostra a continuació. Us agraeixo la lectura i espero veure-us al nostre bloc la setmana vinent.

    Descàrregues disponibles

    Funció Excel RIGHT - exemples (fitxer .xlsx)

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.