Съдържание
В урока е разгледано как да използвате функциите ISTEXT и ISNONTEXT в Excel, за да проверите дали дадена клетка съдържа текстова стойност или не.
Когато трябва да получите информация за съдържанието на някоя клетка в Excel, обикновено използвате така наречените информационни функции. Към тази категория принадлежат както ISTEXT, така и ISNONTEXT. Функцията ISTEXT проверява дали дадена стойност е текст, а ISNONTEXT - дали стойността не е текст. Колкото и проста да е концепцията, функциите са невероятно полезни за решаване на най-различни задачи в Excel.
Функция ISTEXT на Excel
Функцията ISTEXT в Excel проверява дали зададената стойност е текст или не. Ако стойността е текстова, функцията връща TRUE. За всички други типове данни (като числа, дати, празни клетки, грешки и т.н.) тя връща FALSE.
Синтаксисът е следният:
ISTEXT(стойност)
Къде: стойност е стойност, препратка към клетка, израз или друга функция, чийто резултат искате да тествате.
Например, за да разберете дали дадена стойност в A2 е текст или не, използвайте тази проста формула:
=ISTEXT(A2)
Функция ISNONTEXT на Excel
Функцията ISNONTEXT връща TRUE за всяка нетекстова стойност, включително числа, дати и времена, празни места и други формули, които връщат нетекстови резултати или грешки. За текстови стойности тя връща FALSE.
Синтаксисът е същият като този на функцията ISTEXT:
ISTEXT(стойност)
Например, за да проверите дали стойността в A2 не е текст, използвайте тази формула:
=ISNONTEXT(A2)
Както е показано на скрийншота по-долу, формулите ISTEXT и ISNONTEXT дават противоположни резултати:
Функции ISTEXT и ISNONTEXT в Excel - бележки за употреба
ISTEXT и ISNONTEXT са много прости и лесни за използване функции и е малко вероятно да срещнете трудности с тях. Въпреки това има няколко ключови момента, на които трябва да обърнете внимание:
- И двете функции са част от групата функции IS, които връщат логически (булеви) стойности TRUE или FALSE.
- В конкретен случай, когато числата се съхраняват като текст , ISTEXT връща TRUE, а ISNONTEXT връща FALSE.
- И двете функции са налични във всички версии на Excel за Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010, Excel 2007, Excel 2003, Excel XP и Excel 2000.
Използване на ISTEXT и ISNONTEXT в Excel - примери за формули
По-долу ще намерите примери за практическо използване на функциите ISTEXT и ISNONTEXT в Excel, които, надяваме се, ще ви помогнат да направите работните си листове по-ефективни.
Проверка дали дадена стойност е текст
Понякога, когато работите с множество стойности, може с изненада да забележите, че за някои числа формулите ви връщат грешни резултати или дори грешки. Най-очевидната причина е, че проблемните числа се съхраняват като текст. Формулите по-долу ще ви покажат със сигурност кои стойности са текст от гледна точка на Excel.
Формула ISTEXT:
Връща TRUE за всяка стойност, която Excel счита за текст .
=ISTEXT(B2)
Формула ISNONTEXT:
Връща TRUE за всяка стойност, която Excel счита за нетекстови .
=ISNONTEXT(B2)
ISTEXT за валидиране на данни: позволете само текст
В някои ситуации може да искате да разрешите на потребителите да въвеждат само текстови стойности в определени клетки. За да постигнете това, създайте правило за валидиране на данни въз основа на формула ISTEXT:
- Изберете една или повече клетки, които искате да валидирате.
- На Данни в раздела Инструменти за данни щракнете върху групата Утвърждаване на данните бутон.
- На Настройки в раздела Утвърждаване на данните диалогов прозорец, изберете Потребителски за критериите за валидиране и въведете формулата си ISTEXT в съответното поле.
- Щракнете върху OK, за да запазите правилото.
В този пример валидираме отговорите на въпросника в клетки B2 до B4 с помощта на тази формула:
=ISTEXT(B2:B4)
Освен това можете да конфигурирате свои собствени Сигнал за грешка съобщение, за да обясните на потребителите си какъв вид данни се приемат:
В резултат на това, когато потребителят се опита да въведе число или дата в някоя от валидираните клетки, той ще види следното предупреждение:
За повече информация вижте Използване на валидиране на данни в Excel.
Формула на Excel IF ISTEXT
В практиката ISTEXT и ISNONTEXT често се използват заедно с функцията IF, за да се получи по-удобен за потребителя резултат от стандартните TRUE и FALSE.
Формула 1. Ако е текст, тогава
Ако разгледаме нашия първи пример малко по-подробно, да предположим, че искате да върнете "Да" за текстови стойности и "Не" за всичко останало. За да го направите, просто вложете функцията ISTEXT в логическия тест IF и използвайте "Да" и "Не" за value_if_true и value_if_false съответно аргументи:
=IF(ISTEXT(A2), "Yes", "No")
Формула 2. Проверка на входа на клетката
В един от предишните примери обсъдихме как да осигурим валидно въвеждане на данни от потребителя с помощта на Data Validation (валидиране на данни). Това може да се направи и в "по-мека" форма с помощта на формулата IF ISTEXT на Excel.
Да предположим, че във въпросника искате да определите кои отговори са валидни (текстови) и кои не са (нетекстови). За тази цел използвайте вложените оператори IF със следната логика:
- Ако тестваната клетка е празна, не се връща нищо, т.е. празен низ ("").
- Ако клетката е текстова, се връща "Валиден отговор".
- Ако не е посочено нито едно от двете, върнете "Невалиден отговор - моля, въведете текст".
Като съберем всичко това, получаваме следната формула, където B2 е клетката, която трябва да се провери:
=IF(B2="", "", IF(ISTEXT(B2), "Valid answer", "Invalid answer - please enter text."))
Проверка дали даден диапазон съдържа текст
Досега тествахме всяка клетка поотделно. Но какво да правим, ако трябва да разберем дали някоя клетка в даден диапазон съдържа текст?
За да тествате целия диапазон, комбинирайте функцията ISTEXT със SUMPRODUCT по този начин:
SUMPRODUCT(ISTEXT( обхват )*1)>0 SUMPRODUCT(--ISTEXT( обхват ))>0Като пример, нека проверим всеки ред от набора от данни по-долу за текстови стойности, което може да се направи със следните формули:
=SUMPRODUCT(ISTEXT(A2:C2)*1)>0
=SUMPRODUCT(--ISTEXT(A2:C2))>0
Една от горните формули се намира в клетка D2, след което я плъзнете надолу през клетка D5.
Така че вече сте наясно кои редове съдържат един или повече текстови низове (TRUE) и кои съдържат само числа (FALSE).
Ако искате да върнете различни резултати, например "Yes" или "No", а не TRUE и FALSE, включете горната формула в оператора IF:
=IF(SUMPRODUCT(--ISTEXT(A2:C2))>0, "Да", "Не")
Как работи тази формула
Формулата се основава на способността на SUMPRODUCT да обработва масиви по естествен начин. Работейки отвътре навън, ето какво прави тя:
- Функцията ISTEXT връща масив от стойности TRUE и FALSE. За A2:C2 получаваме този масив:
{TRUE,TRUE,FALSE}
- След това умножаваме всеки елемент от горния масив по 1, за да преобразуваме логическите стойности TRUE и FALSE съответно в 1 и 0. За същата цел може да се използва двоен едночленен оператор (--). След преобразуването формулата придобива следния вид:
SUMPRODUCT({1,1,0})>0
- Функцията SUMPRODUCT сумира 1 и 0 и проверява дали резултатът е по-голям от нула. Ако е така, диапазонът съдържа поне една текстова стойност и формулата връща TRUE, ако не FALSE.
Проверка дали дадена клетка съдържа определен текст
Функцията ISTEXT на Excel може да определи само дали дадена клетка съдържа текст, т.е. абсолютно всякакъв текст. За да разберете дали дадена клетка съдържа конкретен текстов низ, използвайте формулата ISNUMBER SEARCH или COUNTIF със заместващи символи.
Например, за да проверите дали идентификаторът на елемента в A2 съдържа текстовия низ, въведен в клетка D2, използвайте следната формула (моля, имайте предвид абсолютната референция $D$2, която не позволява на адреса на клетката да се променя, когато формулата се копира в други клетки):
=ISNUMBER(SEARCH($D$2, A2))
За по-голямо удобство ще го включим във функцията IF:
=IF(ISNUMBER(SEARCH($D$2, A2)), "Yes", "No")
И получавате следните резултати:
Същият резултат може да се постигне и с COUNTIF:
=IF(COUNTIF(A2, "*"&$D$2& "*")>0, "Да", "Не")
За повече примери вижте Excel Ако клетката съдържа формули.
Подчертаване на клетки, които съдържат текст
Функцията ISTEXT може да се използва и с условното форматиране на Excel за подчертаване на клетки, съдържащи текстови стойности. Ето как:
- Изберете всички клетки, които искате да проверите, и ги маркирайте (A2:C5 в този пример).
- На Начало в раздела Стилове група, щракнете върху Ново правило > Използвайте формула, за да определите кои клетки да форматирате .
- В Форматиране на стойности, при които тази формула е вярна въведете следната формула:
=ISTEXT(A2)
Вижте също: Excel SUMIF с множество критерии ORКъдето A2 е най-лявата клетка на избрания диапазон.
- Щракнете върху Формат и изберете желаното форматиране.
- Щракнете два пъти върху OK, за да затворите двата диалогови прозореца и да запазите правилото.
За по-подробно обяснение на всяка стъпка, моля, вижте: Използване на формули за условно форматиране в Excel.
В резултат на това Excel подчертава всички клетки, в които има текстови низове:
Това е начинът за използване на функциите ISTEXT и ISNONTEXT в Excel. Благодаря ви, че прочетохте, и се надявам да се видим в нашия блог следващата седмица!
Налични изтегляния
Примери за формулите ISTEXT и ISNONTEXT на Excel