Екцел ДЕСНА функција са примерима формуле

  • Деле Ово
Michael Brown

У последњих неколико чланака расправљали смо о различитим функцијама текста – онима које се користе за манипулацију текстуалним низовима. Данас је наш фокус на функцији РИГХТ, која је дизајнирана да врати одређени број знакова са крајње десне стране стринга. Као и друге функције Екцел Тект, РИГХТ је веома једноставан и јасан, али ипак има неколико неочигледних употреба које би се могле показати од помоћи у вашем раду.

    Синтакса функције Екцел РИГХТ

    Функција ДЕСНО у Екцел-у враћа наведени број знакова са краја текстуалног низа.

    Синтакса функције ДЕСНО је следећа:

    ДЕСНО(текст, [број_знакова])

    Где :

    • Тект (обавезно) - текстуални низ из којег желите да издвојите знакове.
    • Број_знакова (опционо) - број знакова за издвајање, почевши од крајњег десног знака.
      • Ако је нум_цхарс изостављен, враћа се 1 последњи знак низа (подразумевано).
      • Ако је нум_цхарс већи од укупног броја знакова у стрингу, враћају се сви знакови.
      • Ако је број_знакова негативан број, десна формула враћа #ВРЕДНОСТ! грешка.

    На пример, да бисте издвојили последња 3 знака из стринга у ћелији А2, користите ову формулу:

    =RIGHT(A2, 3)

    Резултат би могао изгледати нешто слично овоме:

    Важна напомена! Екцел функција ДЕСНО увек враћа текстстринг , чак и ако је оригинална вредност број. Да бисте натерали формулу Ригхт да избаци број, користите је у комбинацији са функцијом ВАЛУЕ као што је приказано у овом примеру.

    Како користити функцију ДЕСНО у Екцел-у – примери формуле

    У стварном животу радним листовима, функција Екцел ДЕСНО се ретко користи самостално. У већини случајева ћете га користити заједно са другим Екцел функцијама као део сложенијих формула.

    Како добити подниз који долази после одређеног знака

    У случају да желите да издвојите подниз који прати одређени знак, користите функцију СЕАРЦХ или ФИНД да одредите позицију тог знака, одузмите позицију од укупне дужине низа коју враћа функција ЛЕН и повуците толико знакова са крајње десне стране оригиналног стринга.

    ДЕСНО( стринг , ЛЕН( стринг ) - СЕАРЦХ( знак , стринг ))

    Рецимо, ћелија А2 садржи име и презиме раздвојене размаком, а ви желите да повучете презиме у другу ћелију. Само узмите генеричку формулу изнад и ставите А2 на место стринг , а " " (размак) у темпу знака:

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

    Формула ће дати следећи резултат:

    На сличан начин, можете добити подниз који прати било који други карактер, нпр. зарез, тачка и зарез, цртица итд. На пример, да бисте издвојили подниз који долази после цртице,користите ову формулу:

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

    Резултат ће изгледати слично овоме:

    Како издвојити подниз након последњег појављивања граничника

    Када ако се бавите сложеним стринговима који садрже неколико појављивања истог граничника, можда ћете често морати да преузмете текст десно од последњег појављивања граничника. Да бисте ствари лакше разумели, погледајте следеће изворне податке и жељени резултат:

    Као што можете видети на слици изнад, колона А садржи листу грешака. Ваш циљ је да извучете опис грешке који долази после последњег двотачка у сваком низу. Додатна компликација је што оригинални низови могу да садрже различит број инстанци граничника, нпр. А3 садржи 3 двотачке док А5 само једну.

    Кључ за проналажење решења је одређивање позиције последњег граничника у изворном низу (последње појављивање двотачке у овом примеру). Да бисте то урадили, мораћете да користите неколико различитих функција:

    1. Набавите број граничника у оригиналном низу. То је лак део:
      • Прво, израчунавате укупну дужину низа користећи ЛЕН функцију: ЛЕН(А2)
      • Друго, израчунавате дужину низа без граничника користећи СУБСТИТУТЕ функција која замењује сва појављивања двотачке ничим: ЛЕН(СУБСТИТУТЕ(А2,":",""))
      • Коначно, одузимате дужину оригиналног стрингабез граничника од укупне дужине стринга: ЛЕН(А2)-ЛЕН(СУБСТИТУТЕ(А2,":",""))

      Да бисте били сигурни да формула ради исправно, можете је унети у одвојите ћелију, а резултат ће бити 2, што је број двотачака у ћелији А2.

    2. Замените последњи граничник неким јединственим карактером. Да бисмо издвојили текст који долази после последњег граничника у низу, потребно је да на неки начин „обележимо“ то коначно појављивање граничника. За ово, заменимо последње појављивање двотачка знаком који се нигде не појављује у оригиналним стринговима, на пример знаком фунте (#).

      Ако сте упознати са синтаксом функције Екцел СУБСТИТУТЕ, можда ћете се сетити да она има 4. опциони аргумент (број_инстанце) који дозвољава замену само одређене појаве наведеног карактера. А пошто смо већ израчунали број граничника у стрингу, једноставно наведите горњу функцију у четвртом аргументу друге функције СУБСТИТУТЕ:

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

      Ако ову формулу ставите у посебну ћелију , вратио би овај стринг: ЕРРОР:432#Цоннецтион тиме оут

    3. Преузмите позицију последњег граничника у низу. У зависности од тога којим сте знаком заменили последњи граничник, користите СЕАРЦХ без обзира на велика и мала слова или ФИНД да бисте одредили позицију тог знака у низу. Заменили смо последње дебело цревоса знаком #, тако да користимо следећу формулу да сазнамо њену позицију:

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

      У овом примеру, формула враћа 10, што је позиција # у замењеном низу.

    4. Врати подниз десно од последњег граничника. Сада када знате позицију последњег граничника у низу, све што треба да урадите је да одузмете тај број од укупне дужине стринга и добијете функцију ДЕСНО да врати толико знакова са краја оригиналног низа:

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

    Као што је приказано на снимку екрана испод, формула функционише савршено:

    Ако радите са великим скупом података где различите ћелије могу да садрже различите граничнике, можда ћете желети да приложите горњу формулу у функцију ИФЕРРОР да бисте спречили могуће грешке:

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

    У случају да одређени низ не садржи ни једно појављивање наведеног граничника, оригинални стринг ће бити враћен, као у реду 6 на слици испод:

    Како уклонити првих Н знакова из стринга

    Осим издвајања подниза са краја стринга, функција Екцел ДЕСНО је згодна у ситуацијама када желите да уклоните одређени број знакова са почетка стринга.

    У скупу података коришћеном у претходном Као пример, можда ћете желети да уклоните реч „ГРЕШКА“ која се појављује на почетку сваког стринга и оставите само број грешке и опис. Да га имамурађено, одузмите број знакова које треба уклонити од укупне дужине стринга и доставите тај број аргументу нум_цхарс Екцел функције ДЕСНО:

    ДЕСНО( стринг , ЛЕН ( стринг )- број_знакова_за_уклањање )

    У овом примеру уклањамо првих 6 знакова (5 слова и двотачку) из текстуалног низа у А2, тако да наша формула изгледа као следи:

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

    Може ли Екцел функција ДЕСНО да врати број?

    Као што је поменуто на почетку овог упутства, функција ДЕСНО у Екцел-у увек враћа текстуални низ чак и ако је првобитна вредност број. Али шта ако радите са нумеричким скупом података и желите да и излаз буде нумерички? Лако решење је угнежђење праве формуле у функцију ВАЛУЕ, која је специјално дизајнирана да конвертује стринг који представља број у број.

    На пример, да извучете последњих 5 знакова (поштанског броја) из стринга у А2 и претворите издвојене знакове у број, користите ову формулу:

    =VALUE(RIGHT(A2, 5))

    Снимак екрана испод показује резултат - обратите пажњу на бројеве који се поравнавају удесно у колони Б, а не на лево -поравнани текстуални низови у колони А:

    Зашто функција ДЕСНО не ради са датумима?

    Пошто је Екцел функција ДЕСНО дизајнирана да ради са текстуалним низовима, док су датуми представљени бројевима у интерном Екцел систему, права формула није у стању да преузме појединцадео датума као што је дан, месец или година. Ако покушате да то урадите, све што ћете добити је неколико последњих цифара броја који представља датум.

    Претпоставимо да имате датум 18-Јан-2017 у ћелији А1. Ако покушате да издвојите годину са формулом ДЕСНО(А1,4), резултат би био 2753, што су последње 4 цифре броја 42753 који представља 18. јануар 2017. у Екцел систему.

    "Па, како да повратим одређени део датума?", можете ме питати. Коришћењем једне од следећих функција:

    • Функција ДАН за издвајање дана: =ДАИ(А1)
    • МЕСЕЦ функција за добијање месеца: =МОНТХ(А1)
    • Функција ИЕАР за извлачење године: =ИЕАР(А1)

    Следећи снимак екрана приказује резултате:

    Ако су ваши датуми представљени текстуалним низовима , што је чест случај када извозите податке из спољног извора, ништа вас не спречава да користите функцију ДЕСНО за повлачење последњих неколико знакова у низу који представљају одређени део датума:

    Екцел ДЕСНО функција не ради - разлози и решења

    Ако права формула не ради тачно на вашем радном листу, највероватније је то због једног од следећих разлога:

    1. Постоји један или више завршни размаци у оригиналним подацима. Да бисте брзо уклонили додатне размаке у ћелијама, користите или Екцел функцију ТРИМ или додатак Целл Цлеанер.
    2. Аргумент нум_цхарс је мањи од нуле . ОфНаравно, тешко да ћете желети да намерно ставите негативан број у своју формулу, али ако аргумент нум_цхарс израчунава друга Екцел функција или комбинација различитих функција и ваша формула Ригхт врати #ВРЕДНОСТ! грешка, обавезно проверите угнежђене функције за грешке.
    3. Оригинална вредност је датум . Ако сте пажљиво пратили овај водич, већ знате зашто функција ДЕСНО не може да ради са датумима. Ако је неко прескочио претходни одељак, све детаље можете пронаћи у Зашто Екцел функција ДЕСНО не ради са датумима.

    Овако користите функцију ДЕСНО у Екцел-у. Да бисте ближе погледали формуле о којима се говори у овом водичу, можете преузети нашу радну свеску у наставку. Захваљујем вам што сте читали и надам се да се видимо на нашем блогу следеће недеље.

    Доступна преузимања

    Екцел ДЕСНА функција - примери (.клск датотека)

    Мајкл Браун је посвећен технолошки ентузијаста са страшћу за поједностављење сложених процеса помоћу софтверских алата. Са више од деценије искуства у технолошкој индустрији, усавршио је своје вештине у Мицрософт Екцел-у и Оутлоок-у, као и у Гоогле табеле и документима. Мајклов блог посвећен је дељењу свог знања и стручности са другима, пружајући једноставне савете и упутства за побољшање продуктивности и ефикасности. Без обзира да ли сте искусан професионалац или почетник, Мајклов блог нуди вредне увиде и практичне савете како да на најбољи начин искористите ове основне софтверске алате.