Здравствуйте уважаемые знатоки! Подскажите спомощью какой формулы можно узнать что текст введенный в ячейке А1 является датой? Дата вводится в формате дд.мм.гггг. Спасибо заранее! Power Query, Power Pivot, Power BI и MS Excel спасут мир |
|
китин Пользователь Сообщений: 931 |
ЕЧИСЛО ??? Вполне такой нормальный кинжальчик. Процентов на 100 |
ЕЧИСЛО не подходит, так как в ячейке может быть введено просто чилсо тоже — например 55 Power Query, Power Pivot, Power BI и MS Excel спасут мир |
|
Владимир Пользователь Сообщений: 8196 |
=ЯЧЕЙКА(«формат»;A1)=»D1″ «..Сладку ягоду рвали вместе, горьку ягоду я одна.» |
Дело в том, что если в ячейке А1 стереть дату и ввести например текст, то его формат (формат ячейки А1) опять останется ДАТА, что приводит к неправильному результату. Power Query, Power Pivot, Power BI и MS Excel спасут мир |
|
Сергей Пользователь Сообщений: 11251 |
показали бы в примере что проверяете дата для экселя число, если у вас идут данные вперемешку реально число и число (дата) то проблематично что то проверить (мое мнение), один из вариантов отсеивать числа не входящие в диапазон определенных нужных дат и то сомнительно Лень двигатель прогресса, доказано!!! |
Владимир Пользователь Сообщений: 8196 |
#7 24.05.2016 12:15:56
Если Вы не можете поменять формат ячейки, то это совсем другой уже вопрос. А по делу см. файл. Прикрепленные файлы
«..Сладку ягоду рвали вместе, горьку ягоду я одна.» |
||
Владимир! Большое человеческое спасибо!! Power Query, Power Pivot, Power BI и MS Excel спасут мир |
|
Бахтиёр Пользователь Сообщений: 1929 Excel 365 |
#9 24.05.2016 20:36:57
может лучше так?
если ввести текст, среагирует сразу |
||||
vikttur Пользователь Сообщений: 47199 |
Но не среагирует, если ввести число. Например, 2. Это в первых днях начала 1900 года. |
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
Вить, если это число 2 будет в формате даты — не вижу противоречий. Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
Бахтиёр Пользователь Сообщений: 1929 Excel 365 |
#12 24.05.2016 20:57:54
+1 |
||
vikttur Пользователь Сообщений: 47199 |
#13 24.05.2016 22:39:53
И я не вижу. Но вопрос: нужна ли такая дата автору темы?
|
||||
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
Вить, так ты же сам правильную фразу и процитировал — узнать является ли значение датой. Изменено: The_Prist — 24.05.2016 22:54:43 Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
vikttur Пользователь Сообщений: 47199 |
Да не об этом предупреждаю! |
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
Вить, да поняли мы все это, не горячись. Но ведь автор пока этого не просил — откуда нам знать надо оно или нет? Особенно если учесть, что автора вроде как полностью устроил ответ из 7-го сообщения, а мы так — разминаемся Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
Если нужно проверить, что введенные данные являются датой с точки зрения Excel и может участвовать в формулах, можно вычитать введенное значение из Сегодня(), если ошибка — значит ввели не дату. Такая формула не зависит от формата ячейки, региональных особенностей и отображения даты. =ЕОШИБКА(СЕГОДНЯ()-A1) Истина — в A1 введена не дата |
|
vikttur Пользователь Сообщений: 47199 |
Сергей Чачин, лишнее это. СЕГОДНЯ — летучая. Да и вообще: логика для восприятия должна быть правильная, а то когда надо видеть ИСТИНА (да, это нужный результат), получаем ЛОЖЬ |
Ігор Гончаренко Пользователь Сообщений: 13746 |
#19 04.12.2020 14:50:33
здесь Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||||
Александр Котол Пользователь Сообщений: 29 |
#20 22.12.2021 15:22:55
Добрый день! Прикрепленные файлы
|
||
Попробуем преобразовать заданное значение в дату. Если это удастся, то будем считать значение датой.
Датам от 01.01.1900 до 31.12.9999 в EXCEL сопоставлены целые положительные числа от 1 до 2958465. Например, дате 25.01.1900 соответствует число 25. Таким образом, число из этого диапазона может быть представлено в виде даты.
Кроме того, EXCEL с помощи функции
ДАТАЗНАЧ()
может преобразовать в дату некоторые текстовые строки. Например, «14-мар-2011» или «2001/3/1» или «21-02-2001» или «‘5 ноябрь 2009». Но, некоторые форматы записи даты EXCEL не понимает: «2011-март-14» или «2009,11,5».
Некоторые значения не могут быть
преобразованы в даты
по определению: 29-02-2007 (2007 год не високосный), 31.09.2011 (31 сентября не бывает).
С помощью функции
=НЕ(ЕОШ(ГОД(A5)))
можно определить является ли значение датой. Функция
ГОД()
пытается преобразовать значение в дату и вернуть ее год. Если у нее это не получается, то возвращается ошибка (см.
файл примера
).
IsDate
IsDate(Expression)
Функция IsDate проверяет, является ли данное выражение корректной датой или временем. Функция обрабатывает данные любого типа без генерации ошибки. Но функция использует национальные системные установки дати и времени компьютера, поэтому «правильная» дата, полученная на одном компьютере, может оказаться некорректной на другом компьютере
Возвращаемое значение
Возвращает значение типа Boolean, показывающее, может ли значение выражения быть преобразовано в значение даты. Функция IsDate возвращает True, если выражение принадлежит к типу даты или допускает преобразование к допустимому значению даты; в противном случае возвращается False. В Microsoft Windows допустимыми являются даты в диапазоне от 1 января 100 г. до 31 декабря 9999 г.; другие операционные системы могут поддерживать другие диапазоны дат
Параметры
- Expression
- Обязательный аргумент — выражение типа Variant, содержащее выражение даты или строковое выражение, распознаваемое как значение даты или времени
Пример
' Используем функцию IsDate
' для проверки, является ли год высокосным
' Для этого проверяем, существует ли 29 февраля
Dim MyYear is String
If IsDate("02/29/" & myYear) Then
MsgBox myYear & "- высокосный год"
Else
MsgBox myYear & "- невысокосный год"
End If
Категория
Функции дат и времени
В учебнике объясняется, что такое ISNUMBER в Excel, и приводятся примеры базового и расширенного использования.
Концепция функции ЕЧИСЛО в Excel очень проста — она просто проверяет, является ли заданное значение числом или нет. Важным моментом здесь является то, что практическое использование функции выходит далеко за рамки ее основной концепции, особенно в сочетании с другими функциями в более крупных формулах.
Функция ЕЧИСЛО в Excel проверяет, содержит ли ячейка числовое значение или нет. Он относится к группе функций ИС.
Функция доступна во всех версиях Excel для Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010, Excel 2007 и более ранних версиях.
Синтаксис ISNUMBER требует только одного аргумента:
=ЧИСЛО(значение)
Где ценность это значение, которое вы хотите проверить. Обычно он представлен ссылкой на ячейку, но вы также можете указать реальное значение или вложить другую функцию в ISNUMBER для проверки результата.
Если ценность является числовым, функция возвращает ИСТИНА. Для всего остального (текстовые значения, ошибки, пробелы) ISNUMBER возвращает FALSE.
В качестве примера, давайте проверим значения в ячейках с A2 по A6, и мы обнаружим, что первые 3 значения являются числами, а последние два — текстом:
2 вещи, которые вы должны знать о функции ISNUMBER в Excel
Здесь следует отметить несколько интересных моментов:
- Во внутреннем представлении Excel даты и время являются числовыми значениями, поэтому формула ЕЧИСЛО возвращает для них ИСТИНА (см. B3 и B4 на снимке экрана выше).
- Для чисел, сохраненных в виде текста, функция ЕЧИСЛО возвращает ЛОЖЬ (см. этот пример).
Примеры формулы ЕЧИСЛО в Excel
В приведенных ниже примерах показано несколько распространенных и несколько нетривиальных способов использования ISNUMBER в Excel.
Проверить, является ли значение числом
Если у вас есть множество значений на листе и вы хотите знать, какие из них являются числами, ISNUMBER — это правильная функция для использования.
В этом примере первое значение находится в A2, поэтому мы используем приведенную ниже формулу, чтобы проверить его, а затем перетащите формулу вниз на столько ячеек, сколько необходимо:
=ЧИСЛО(A2)
Обратите внимание, хотя все значения выглядят как числа, формула ЕЧИСЛО вернула ЛОЖЬ для ячеек A4 и A5, что означает, что эти значения являются числовыми строками, т. е. числами, отформатированными как текст. Для этого могут быть разные причины, например ведущие нули, предшествующий апостроф и т. д. Какой бы ни была причина, Excel не распознает такие значения как числа. Итак, если ваши значения не вычисляются правильно, первое, что вам нужно проверить, это действительно ли они являются числами с точки зрения Excel, а затем преобразовать текст в число, если это необходимо.
формула ПОИСК ISNUMBER в Excel
Помимо определения чисел функция ЕЧИСЛО Excel также может проверять, содержит ли ячейка определенный текст как часть содержимого. Для этого используйте ISNUMBER вместе с функцией SEARCH.
В общем виде формула выглядит следующим образом:
IНОМЕР(ПОИСК(подстрока, клетка))
Где подстрока это текст, который вы хотите найти.
В качестве примера давайте проверим, содержит ли строка в A3 определенный цвет, скажем, красный:
=ISNUMBER(ПОИСК(«красный», A3))
Эта формула хорошо работает для одной ячейки. Но поскольку наша примерная таблица (см. ниже) содержит три разных цвета, написание отдельной формулы для каждого из них было бы пустой тратой времени. Вместо этого мы будем ссылаться на ячейку, содержащую интересующий цвет (B2).
=ISNUMBER(ПОИСК(B$2, $A3))
Чтобы формула корректно копировалась вниз и вправо, обязательно зафиксируйте следующие координаты знаком $:
- В подстрока ссылку, заблокируйте строку (B$2), чтобы скопированные формулы всегда выбирали подстроки в строке 2. Ссылка на столбец является относительной, поскольку мы хотим, чтобы она корректировалась для каждого столбца, т. е. когда формула копируется в C3, ссылка на подстроку будет изменить на 2 канадских доллара.
- в исходная ячейка ссылку, заблокируйте столбец ($A3), чтобы все формулы проверяли значения в столбце A.
На скриншоте ниже показан результат:
ISNUMBER FIND — формула с учетом регистра
Так как функция ПОИСК без учета регистра, приведенная выше формула не различает прописные и строчные символы. Если вы ищете формулу с учетом регистра, используйте функцию НАЙТИ, а не ПОИСК.
IЧИСЛО(НАЙТИ(подстрока, клетка))
Для нашего примера набора данных формула будет иметь следующий вид:
=ЧИСЛО(НАЙТИ(B$2, $A3))
Как работает эта формула
Логика формулы вполне очевидна и проста для понимания:
- Функция ПОИСК/НАЙТИ ищет подстроку в указанной ячейке. Если подстрока найдена, возвращается позиция первого символа. Если подстрока не найдена, функция выдает ошибку #ЗНАЧ! ошибка.
- Функция ISNUMBER берет его оттуда и обрабатывает числовые позиции. Таким образом, если подстрока найдена и ее позиция возвращается в виде числа, ISNUMBER выводит TRUE. Если подстрока не найдена и #VALUE! возникает ошибка, ISNUMBER выводит FALSE.
ЕСЛИ ЕСЛИ ЕСЛИ ЧИСЛО формула
Если вы хотите получить формулу, которая выводит что-то отличное от ИСТИНА или ЛОЖЬ, используйте ЕСЛИЧИСЛО вместе с функцией ЕСЛИ.
Пример 1. Ячейка содержит какой текст
Продолжая предыдущий пример, предположим, что вы хотите пометить цвет каждого элемента знаком «x», как показано в таблице ниже.
Для этого просто оберните Формула ПОИСКА НОМЕРА в оператор ЕСЛИ:
=ЕСЛИ(ЧИСЛО(ПОИСК(B$2, $A3)), «x», «»)
Если ISNUMBER возвращает TRUE, функция ЕСЛИ выводит «x» (или любое другое значение, которое вы указываете для значение_если_истина аргумент). Если ISNUMBER возвращает FALSE, функция ЕСЛИ выводит пустую строку («»).
Пример 2. Первый символ в ячейке — число или текст
Представьте, что вы работаете со списком буквенно-цифровых строк и хотите знать, является ли первый символ строки цифрой или буквой.
Чтобы построить такую формулу, нам понадобятся 4 разные функции:
- Функция LEFT извлекает первый символ из начала строки, скажем, в ячейке A2:
ВЛЕВО(A2, 1)
- Поскольку LEFT относится к категории текстовых функций, ее результатом всегда является текстовая строка, даже если она содержит только числа. Поэтому перед проверкой извлеченного символа нам нужно попробовать преобразовать его в число. Для этого используйте либо функцию ЗНАЧ, либо двойной унарный оператор:
ЗНАЧЕНИЕ(ЛЕВО(A2, 1)) или (—ЛЕВО(A2, 1))
- Функция ISNUMBER определяет, является ли извлеченный символ числовым или нет:
IЧИСЛО(ЗНАЧЕНИЕ(ЛЕВО(A2, 1)))
- В зависимости от результата ISNUMBER (ИСТИНА или ЛОЖЬ) функция ЕСЛИ возвращает «Число» или «Букву» соответственно.
Предполагая, что мы тестируем строку в A2, полная формула принимает следующий вид:
=ЕСЛИ(ЧИСЛО(ЗНАЧЕНИЕ(ЛЕВО(A2, 1))), «Число», «Буква»)
или же
=ЕСЛИ(ЧИСЛО(—ЛЕВО(A2, 1)), «Число», «Буква»)
Функция ISNUMBER также удобна для извлечения чисел из строки. Вот пример: Получить число из любой позиции в строке.
Проверить, не является ли значение числом
Хотя в Microsoft Excel есть специальная функция ISNONTEXT, позволяющая определить, не является ли значение ячейки текстом, аналогичная функция для чисел отсутствует.
Простое решение — использовать ISNUMBER в сочетании с NOT, которое возвращает противоположное логическому значению. Другими словами, когда ISNUMBER возвращает TRUE, NOT преобразует его в FALSE, и наоборот.
Чтобы увидеть его в действии, обратите внимание на результаты следующей формулы:
=НЕ(ЧИСЛО(A2))
Другой подход заключается в совместном использовании функций ЕСЛИ и ЕСЛИЧИСЛО:
=ЕСЛИ(ЧИСЛО(A2), «», «Не число»)
Если A2 является числовым, формула ничего не возвращает (пустая строка). Если A2 не является числом, формула говорит об этом заранее: «Не число».
Если вы хотите выполнить некоторые вычисления с числами, поместите уравнение или другую формулу в поле значение_если_истина аргумент вместо пустой строки. Например, приведенная ниже формула будет умножать числа на 10 и давать «Не число» для нечисловых значений:
=ЕСЛИ(ЧИСЛО(A2), A2*10, «Не число»)
Проверьте, содержит ли диапазон какое-либо число
В ситуации, когда вы хотите проверить весь диапазон чисел, используйте функцию ЕСЧИСЛО в сочетании с СУММПРОИЗВ следующим образом:
СУММПРОИЗВ(—ЧИСЛО(диапазон))>0
СУММПРОИЗВ(ЧИСЛО(диапазон)*1)>0
Например, чтобы узнать, содержит ли диапазон A2:A5 какое-либо числовое значение, формулы будут выглядеть следующим образом:
=СУММПРОИЗВ(—ЧИСЛО(A2:A5))>0
=СУММПРОИЗВ(ЧИСЛО(A2:A5)*1)>0
Если вы хотите вывести «Да» и «Нет» вместо ИСТИНА и ЛОЖЬ, используйте оператор IF в качестве «оболочки» для приведенных выше формул. Например:
=ЕСЛИ(СУММПРОИЗВ(—ЧИСЛО(A2:A5))>0, «Да», «Нет»)
Как работает эта формула
В основе формулы функция ЕЧИСЛО оценивает каждую ячейку указанного диапазона, скажем, B2:B5, и возвращает ИСТИНА для чисел и ЛОЖЬ для всего остального. Поскольку диапазон содержит 4 ячейки, массив имеет 4 элемента:
{ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ}
Операция умножения или двойной унарный (—) преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно:
{1;0;0;0}
Функция СУММПРОИЗВ складывает элементы массива. Если результат больше нуля, это означает, что в диапазоне есть хотя бы одно число. Итак, вы используете «> 0», чтобы получить окончательный результат ИСТИНА или ЛОЖЬ.
ISNUMBER в условном форматировании для выделения ячеек, содержащих определенный текст
Если вы хотите выделить ячейки или целые строки, содержащие определенный текст, создайте правило условного форматирования на основе ПОИСК ПО НОМЕРУ (без учета регистра) или НАЙТИ НОМЕР (с учетом регистра) формула.
В этом примере мы собираемся выделить строки на основе значения в столбце A. Точнее, мы выделим элементы, содержащие слово «красный». Вот как:
- Выберите все строки данных (в этом примере A2: C6) или только столбец, в котором вы хотите выделить ячейки.
- На Дом вкладка, в Стили группа, нажмите Новое правило > Используйте формулу, чтобы определить, какие ячейки нужно отформатировать.
- в Форматировать значения, где эта формула верна введите приведенную ниже формулу (обратите внимание, что координата столбца заблокирована знаком $):
=ISNUMBER(ПОИСК(«красный», $A2))
- Нажмите на Формат кнопку и выберите нужный формат.
- Нажмите ОК дважды.
Если у вас мало опыта работы с условным форматированием Excel, вы можете найти подробные шаги со снимками экрана в этом руководстве: Как создать правило условного форматирования на основе формулы.
В результате подсвечиваются все элементы красного цвета:
Вместо «жесткого кодирования» цвета в правиле условного форматирования вы можете ввести его в предопределенную ячейку, скажем, E2, и ссылаться на эту ячейку в своей формуле (обратите внимание на абсолютную ссылку на ячейку $E$2). Кроме того, вам нужно проверить, не пуста ли ячейка ввода:
=И(ISNUMBER(ПОИСК($E$2, $A2)), $E$2<>«»)
В результате вы получите более гибкое правило, которое выделяет строки на основе вашего ввода в E2:
Вот как можно использовать функцию ЕЧИСЛО в Excel. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!
Доступные загрузки
Примеры формулы ЕЧИСЛО в Excel
Вас также могут заинтересовать
Skip to content
Мы рассмотрим, как выполнять проверку данных в Excel: создавать правила проверки для чисел, дат или текстовых значений, создавать списки проверки данных, копировать проверку данных в другие ячейки, находить недопустимые записи, исправлять и удалять проверку данных.
При настройке рабочей книги для пользователей часто может потребоваться контролировать ввод информации в определенные ячейки, чтобы убедиться, что все введенные данные точны и непротиворечивы. Кроме того, вы можете захотеть разрешить в ячейке только определенный тип данных, например числа или даты, или ограничить числа определенным диапазоном, а текст — заданной длиной. Возможно, вы даже захотите предоставить заранее определенный список допустимых значений, чтобы исключить возможные ошибки. Проверка данных Excel позволяет выполнять все эти действия во всех версиях Microsoft Excel 365, 2019, 2016, 20013, 2010 и более ранних версиях.
Что такое проверка данных в Excel?
Проверка данных Excel — это функция, которая ограничивает (проверяет) пользовательский ввод на рабочем листе. Технически вы создаете правило проверки, которое контролирует, какие данные можно вводить в определенную ячейку.
Вот лишь несколько примеров того, что может сделать проверка данных в Excel:
- Разрешить только числовые или текстовые значения в ячейке.
- Разрешить только числа в указанном диапазоне.
- Разрешить ввод данных определенной длины.
- Ограничить даты и время вне заданного диапазона.
- Ограничить записи выбором из раскрывающегося списка.
- Проверка вводимого на основе другой ячейки.
- Показать входное сообщение, когда пользователь выбирает ячейку.
- Показывать предупреждающее сообщение при вводе неверных данных.
- Найти неправильные записи в проверенных ячейках.
Например, вы можете настроить правило, которое ограничивает ввод данных 3-значными числами от 100 до 999. Если пользователь вводит что-то другое, Excel покажет предупреждение об ошибке, объясняющее, что было сделано неправильно:
Как сделать проверку данных в Excel
Чтобы добавить проверку данных в Excel, выполните следующие действия.
1. Откройте диалоговое окно «Проверка данных».
Напомним, где находится кнопка проверки данных в Excel. Выбрав одну или несколько ячеек для проверки, перейдите на вкладку «Данные» > группа «Работа с данными» и нажмите кнопку «Проверка данных».
2. Создайте правило проверки Excel.
На вкладке «Параметры» определите критерии проверки в соответствии с вашими потребностями. В критериях вы можете указать любое из следующего:
- Значения — введите числа в поля критериев, как показано на снимке экрана ниже.
- Ссылки на ячейки — создание правила на основе значения или формулы в другой ячейке.
- Формулы — позволяют выразить более сложные условия.
В качестве примера создадим правило, разрешающее пользователям вводить только целое число от 100 до 999:
Настроив правило проверки, нажмите кнопку «ОК», чтобы закрыть окно «Проверка вводимых значений», или переключитесь на другую вкладку, чтобы добавить подсказку по вводу и/или сообщение об ошибке.
3. Подсказка по вводу (необязательно).
Если вы хотите отобразить сообщение, объясняющее пользователю, какие данные разрешены в данной ячейке, откройте соответствующую вкладку и выполните следующие действия:
- Убедитесь, что установлен флажок Отображать подсказку при выборе ячейки.
- Введите заголовок и текст сообщения в соответствующие поля.
- Нажмите OK, чтобы закрыть диалоговое окно.
Как только пользователь выберет проверяемую ячейку, появится следующее сообщение, как на скриншоте ниже:
4. Отображение предупреждения об ошибке (необязательно)
В дополнение к входному сообщению вы можете отобразить одно из следующих предупреждений, когда в ячейку введены недопустимые данные.
Тип оповещения | Описание |
---|---|
Стоп (по умолчанию) | Самый строгий тип предупреждений, запрещающий пользователям вводить неверные данные. Вы нажимаете «Повторить», чтобы ввести другое значение, или «Отмена», чтобы удалить запись. |
Предупреждение | Предупреждает пользователей о том, что данные недействительны, но не препятствует их вводу. Вы нажимаете «Да», чтобы ввести недопустимое значение, «Нет», чтобы изменить его, или «Отмена», чтобы удалить запись. |
Информация | Наименее строгий тип оповещения, который информирует пользователей только о неверном вводе данных. Нажмите «ОК», чтобы ввести недопустимое значение, или «Отмена», чтобы удалить его из ячейки. |
Чтобы настроить пользовательское сообщение об ошибке, перейдите на вкладку «Сообщение об ошибке» и задайте следующие параметры:
- Установите флажок Выводить сообщение об ошибке (обычно установлен по умолчанию).
- В поле Вид выберите нужный тип оповещения.
- Введите заголовок и текст сообщения об ошибке в соответствующие поля.
- Нажмите ОК.
И теперь, если пользователь введет недопустимые значения, Excel отобразит специальное предупреждение с объяснением ошибки (как показано в начале этого руководства).
Примечание. Если вы не введете собственное сообщение, появится стандартное предупреждение Stop со следующим текстом: Это значение не соответствует ограничениям проверки данных, установленным для этой ячейки.
Как настроить ограничения проверки данных Excel
При добавлении правила проверки данных в Excel вы можете выбрать один из предопределенных параметров или указать новые критерии на основе собственной формулы. Ниже мы обсудим каждую из встроенных опций.
Как вы уже знаете, критерии проверки определяются на вкладке «Параметры» диалогового окна «Проверка данных» (вкладка «Данные» > «Проверка данных»).
В первую очередь нужно настроить проверку типа записываемых данных.
К примеру, чтобы ограничить ввод данных целым или десятичным числом, выберите соответствующий элемент в поле Тип данных. Затем выберите один из следующих критериев в поле Данные:
- Равно или не равно указанному числу
- Больше или меньше указанного числа
- Между двумя числами или вне, чтобы исключить этот диапазон чисел
Например, вот как выглядят ограничения по проверке данных Excel, которые допускают любое целое число больше 100:
Проверка даты и времени в Excel
Чтобы проверить даты, выберите «Дата» в поле «Тип данных», а затем выберите соответствующий критерий в поле «Значение». Существует довольно много предопределенных параметров на выбор: разрешить только даты между двумя датами, равные, большие или меньшие определенной даты и т. д.
Точно так же, чтобы проверить время, выберите Время в поле Значение, а затем определите необходимые критерии.
Например, чтобы разрешить только даты между датой начала в B1 и датой окончания в B2, примените это правило проверки даты Excel:
Разрешить только будни или выходные
Чтобы разрешить пользователю вводить даты только будних или выходных дней, настройте пользовательское правило проверки на основе функции ДЕНЬНЕД (WEEKDAY).
Если для второго аргумента установлено значение 2, функция возвращает целое число в диапазоне от 1 (понедельник) до 7 (воскресенье). Так, для будних дней (пн-пт) результат формулы должен быть меньше 6, а для выходных (сб и вс) — больше 5.
Таким образом, разрешить только рабочие дни:
=ДЕНЬНЕД( ячейка ; 2)<6
Разрешить только выходные :
=ДЕНЬНЕД( ячейка ; 2)>5
Например, чтобы разрешить ввод только рабочих дней в ячейки C2:C8, используйте следующую формулу:
=ДЕНЬНЕД(A2;2)<6
Проверить даты на основе сегодняшней даты
Во многих случаях может потребоваться использовать сегодняшнюю дату в качестве начальной даты допустимого диапазона дат. Чтобы получить текущую дату, используйте функцию СЕГОДНЯ , а затем добавьте к ней нужное количество дней, чтобы вычислить дату окончания временного периода.
Например, чтобы ограничить ввод данных через 6 дней (7 дней, включая сегодняшний день), мы можем использовать встроенное правило даты с критериями в виде формул:
- Выберите Дата в поле Тип данных
- Выберите в поле Значение – между
- В поле Начальная дата введите выражение =СЕГОДНЯ()
- В поле Конечная дата введите =СЕГОДНЯ() + 6
Аналогичным образом вы можете ограничить пользователей вводом дат до или после сегодняшней даты. Для этого выберите меньше или больше, чем в поле Значение, а затем введите =СЕГОДНЯ() в поле Начальная дата или Конечная дата соответственно.
Проверка времени на основе текущего времени
Чтобы проверить вводимые данные на основе текущего времени, используйте предопределенное правило времени с собственной формулой проверки данных. Для этого сделайте следующее:
В поле Тип данных выберите Время .
В поле Значение выберите «меньше», чтобы разрешить только время до текущего времени, или «больше», чтобы разрешить время после текущего времени.
В поле Время окончания или Время начала (в зависимости от того, какие критерии вы выбрали на предыдущем шаге) введите одну из следующих формул:
Чтобы проверить дату и время на основе текущей даты и времени:
=ТДАТА()
Чтобы проверить время на основе текущего времени, используйте выражение:
=ВРЕМЯ(ЧАС(ТДАТА());МИНУТЫ(ТДАТА());СЕКУНДЫ(ТДАТА()))
Проверка длины текста
Чтобы разрешить ввод данных определенной длины, выберите Длина текста в поле Тип данных и укажите критерии проверки в соответствии с вашей бизнес-логикой.
Например, чтобы ограничить ввод до 15 символов, создайте такое правило:
Примечание. Параметр «Длина текста» ограничивает количество символов, но не тип данных. Это означает, что приведенное выше правило разрешает как текст, так и числа до 15 символов или 15 цифр соответственно.
Список проверки данных Excel (раскрывающийся список)
Чтобы добавить для проверки вводимых данных раскрывающийся список элементов в ячейку или группу ячеек, выберите целевые ячейки и выполните следующие действия:
- Откройте диалоговое окно «Проверка данных» (вкладка «Данные» > «Проверка данных»).
- На вкладке «Настройки» выберите «Список» в поле «Тип данных».
- В поле Источник введите элементы списка проверки Excel, разделенные точкой с запятой. Например, чтобы ограничить пользовательский ввод тремя вариантами, введите Да; Нет; Н/Д.
- Убедитесь, что выбрана опция Список допустимых значений, чтобы стрелка раскрывающегося списка отображалась рядом с ячейкой.
- Нажмите ОК.
Выпадающий список проверки данных Excel будет выглядеть примерно так:
Примечание. Будьте осторожны с опцией «Игнорировать пустые ячейки», которая активна по умолчанию. Если вы создаете раскрывающийся список на основе именованного диапазона, в котором есть хотя бы одна пустая ячейка, установка этого флажка позволит ввести любое значение в проверенную ячейку. Во многих случаях это справедливо и для формул проверки данных: если ячейка, указанная в формуле, пуста, любое значение будет разрешено в проверяемой ячейке.
Другие способы создания списка проверки данных в Excel
Предоставление списков, разделенных точкой с запятой, непосредственно в поле «Источник» — это самый быстрый способ, который хорошо работает для небольших раскрывающихся списков, которые вряд ли когда-либо изменятся. В других сценариях можно действовать одним из следующих способов:
- Создать список проверки данных из диапазона ячеек.
- Создать динамический список проверки данных на основе именованного диапазона.
- Получить список проверки данных Excel из умной таблицы. Лучше всего то, что раскрывающийся список на основе таблицы является динамическим по своей природе и автоматически обновляется при добавлении или удалении элементов из этой таблицы.
Во всех этих случаях вы просто записываете соответствующую ссылку на диапазон либо элемент таблицы в поле Источник.
Разрешить только числа
В дополнение к встроенным правилам проверки данных Excel, обсуждаемым в этом руководстве, вы можете создавать собственные правила с собственными формулами проверки данных.
Удивительно, но ни одно из встроенных правил проверки данных Excel не подходит для очень типичной ситуации, когда вам нужно ограничить пользователей вводом только чисел в определенные ячейки. Но это можно легко сделать с помощью пользовательской формулы проверки данных, основанной на функции ЕЧИСЛО(), например:
=ЕЧИСЛО(C2)
Где C2 — самая верхняя ячейка диапазона, который вы хотите проверить.
Примечание. Функция ЕЧИСЛО допускает любые числовые значения в проверенных ячейках, включая целые числа, десятичные дроби, дроби, а также даты и время, которые также являются числами в Excel.
Разрешить только текст
Если вы ищете обратное — разрешить только текстовые записи в заданном диапазоне ячеек, то создайте собственное правило с функцией ЕТЕКСТ (ISTEXT), например:
=ЕТЕКСТ(B2)
Где B2 — самая верхняя ячейка выбранного диапазона.
Разрешить текст, начинающийся с определенных символов
Если все значения в определенном диапазоне должны начинаться с определенного символа или подстроки, выполните проверку данных Excel на основе функции СЧЁТЕСЛИ с подстановочным знаком:
=СЧЁТЕСЛИ(A2; » текст *»)
Например, чтобы убедиться, что все идентификаторы заказов в столбце A начинаются с префикса «AРТ-», «арт-», «Aрт-» или «aРт-» (без учета регистра), определите пользовательское правило с этой проверкой данных.
=СЧЁТЕСЛИ(A2;»АРТ-*»)
Формула проверки с логикой ИЛИ (несколько критериев)
В случае, если есть 2 или более допустимых префикса, добавьте несколько функций СЧЁТЕСЛИ, чтобы ваше правило проверки данных Excel работало с логикой ИЛИ:
=СЧЁТЕСЛИ(A2;»АРТ-*»)+СЧЁТЕСЛИ(A2;»АБВ-*»)
Проверка ввода с учетом регистра
Если регистр символов имеет значение, используйте СОВПАД (EXACT) в сочетании с функцией ЛЕВСИМВ, чтобы создать формулу проверки с учетом регистра для записей, начинающихся с определенного текста:
=СОВПАД(ЛЕВСИМВ(ячейка; число_символов); текст)
Например, чтобы разрешить только те коды заказов, которые начинаются с «AРТ-» (ни «арт-», ни «Арт-» не допускаются), используйте эту формулу:
=СОВПАД(ЛЕВСИМВ(A2;4);»АРТ-«)
В приведенной выше формуле функция ЛЕВСИМВ извлекает первые 4 символа из ячейки A2, а СОВПАД выполняет сравнение с учетом регистра с жестко заданной подстрокой (в данном примере «AРТ-«). Если две подстроки точно совпадают, формула возвращает ИСТИНА и проверка проходит успешно; в противном случае возвращается ЛОЖЬ и проверка завершается неудачно.
Разрешить только значения, содержащие определенный текст
Чтобы разрешить ввод значений, которые содержат определенный текст в любом месте ячейки (в начале, середине или конце), используйте функцию ЕЧИСЛО (ISNUMBER) в сочетании с НАЙТИ (FIND) или ПОИСК (SEARCH) в зависимости от того, хотите ли вы совпадение с учетом регистра или без учета регистра:
Проверка без учета регистра:
ЕЧИСЛО(ПОИСК( текст ; ячейка ))
Проверка с учетом регистра:
ЕЧИСЛО(НАЙТИ( текст ; ячейка ))
В нашем примере, чтобы разрешить только записи, содержащие текст «AР» в ячейках A2: A8, используйте одну из следующих формул, создав правило проверки в ячейке A2:
Без учета регистра:
=ЕЧИСЛО(ПОИСК(«ар»;A2))
С учетом регистра:
=ЕЧИСЛО(НАЙТИ(«АР»;A2))
Формулы работают по следующей логике:
Вы ищете подстроку «AР» в ячейке A2, используя НАЙТИ или ПОИСК, и оба возвращают позицию первого символа в подстроке. Если текст не найден, возвращается ошибка. Если поиск успешен и «АР» найден в ячейке, мы получаем номер позиции в тексте, где эта подстрока была найдена. Далее функция ЕЧИСЛО возвращает ИСТИНА, и проверка данных проходит успешно. В случае, если подстроку не удалось найти, результатом будет ошибка и ЕЧИСЛО возвращает ЛОЖЬ. Запись не будет разрешена в ячейке.
Разрешить только уникальные записи и запретить дубликаты
В ситуациях, когда определенный столбец или диапазон ячеек не должны содержать дубликатов, настройте пользовательское правило проверки данных, разрешающее только уникальные записи. Для этого мы можем использовать классическую формулу СЧЁТЕСЛИ для выявления дубликатов :
=СЧЁТЕСЛИ( диапазон ; самая верхняя_ячейка )<=1
Например, чтобы убедиться, что в ячейки с A2 по A8 вводятся только уникальные идентификаторы заказов, создайте настраиваемое правило со следующей формулой проверки данных:
=СЧЁТЕСЛИ($A$2:$A$8; A2)<=1
При вводе уникального значения формула возвращает ИСТИНА, и проверка проходит успешно. Если такое же значение уже существует в указанном диапазоне (счетчик больше 1), функция СЧЁТЕСЛИ возвращает ЛОЖЬ, и вводимые данные не проходят проверку.
Обратите внимание, что мы фиксируем диапазон абсолютными ссылками на ячейки (A$2:$A$8) и используем относительную ссылку для верхней ячейки (A2), чтобы формула корректно изменялась для каждой ячейки в проверяемом диапазоне.
Как отредактировать проверку данных в Excel
Чтобы изменить правило проверки Excel, выполните следующие действия:
- Выберите любую из проверенных ячеек.
- Откройте диалоговое окно «Проверка данных» (вкладка «Данные» > «Проверка данных»).
- Внесите необходимые изменения.
- Установите флажок Применить эти изменения ко всем другим ячейкам с теми же параметрами, чтобы скопировать внесенные вами изменения во все остальные ячейки с исходными критериями проверки.
- Нажмите OK, чтобы сохранить изменения.
Например, вы можете отредактировать список проверки данных Excel, добавив или удалив элементы из поля «Источник», и применить эти изменения ко всем другим ячейкам, содержащим тот же раскрывающийся список.
Как скопировать правило проверки данных Excel в другие ячейки
Если вы настроили проверку данных для одной ячейки и хотите проверить другие ячейки с теми же критериями, вам не нужно заново создавать правило с нуля.
Чтобы скопировать правило проверки в Excel, выполните следующие 4 быстрых шага:
- Выберите ячейку, к которой применяется правило проверки, и нажмите Ctrl + С , чтобы скопировать его.
- Выберите другие ячейки, которые вы хотите проверить. Чтобы выделить несмежные ячейки, нажмите и удерживайте клавишу Ctrl при выборе ячеек.
- Щелкните выделенный фрагмент правой кнопкой мыши, выберите «Специальная вставка» и выберите параметр «Условия на значения».
Либо используйте комбинацию клавиш Ctrl + Alt + V
, и затем — Н
.
- Нажмите ОК.
Подсказка. Вместо того, чтобы копировать проверку данных в другие ячейки, вы можете преобразовать свой набор данных в таблицу Excel. По мере добавления строк в таблицу Excel будет автоматически применять правило проверки к новым строкам.
Как найти ячейки с проверкой данных в Excel
Чтобы быстро найти все проверенные ячейки на текущем листе, перейдите на вкладку «Главная» > группа «Редактирование» и нажмите «Найти и выделить» > «Проверка данных» :
Это выберет все ячейки, к которым применены какие-либо правила проверки данных. Если необходимо, из этих выбранных ячеек вы можете удалить проверку.
Как убрать проверку данных в Excel
В целом, есть два способа удалить проверку в Excel: стандартный подход, разработанный Microsoft, и метод без мыши, разработанный фанатами Excel, которые никогда не отрывают руки от клавиатуры без крайней необходимости (например, чтобы выпить чашку кофе:)
Способ 1: Обычный способ отключить проверку данных
Обычно, чтобы удалить проверку данных на листах Excel, выполните следующие действия:
- Выберите ячейку (ячейки) с проверкой данных.
- На вкладке «Данные» нажмите кнопку «Проверка данных».
- На вкладке «Настройки» нажмите кнопку «Очистить все», а затем нажмите «ОК».
Советы:
- Чтобы удалить проверку данных из всех ячеек на текущем листе, используйте инструмент «Найти и выделить», чтобы выбрать все ячейки с проверкой.
- Чтобы удалить определенное правило проверки данных, выберите любую ячейку с этим правилом, откройте диалоговое окно «Проверка данных», установите флажок «Применить эти изменения ко всем другим ячейкам с такими же настройками» и нажмите кнопку «Очистить все».
Как видите, стандартный метод работает довольно быстро, но требует нескольких щелчков мышью, что, на мой взгляд, не имеет большого значения. Но если вы предпочитаете работать с клавиатурой, а не с мышью, вам может понравиться следующий подход.
Способ 2: Удалить правила проверки данных при помощи Специальной вставки
Изначально специальная вставка Excel предназначена для вставки определенных элементов скопированных ячеек. На самом деле она может делать гораздо больше полезных вещей. Среди прочего, он может быстро удалить правила проверки данных на листе. Вот как:
- Выберите пустую ячейку без проверки данных и нажмите
Ctrl + С
, чтобы скопировать ее в буфер обмена. - Выберите ячейки, в которых вы хотите отключить проверку данных.
- Нажмите
Ctrl + Alt + V
, и затемН
. Эта комбинация клавиш вызовет «Специальная вставка» > «Проверка данных». - Нажимаем ОК.
Советы по проверке данных в Excel
Теперь, когда вы знакомы с основами проверки данных в Excel, позвольте мне поделиться несколькими советами, которые могут сделать ваши правила намного более эффективными.
Проверка данных на основе другой ячейки
Вместо того, чтобы вводить значения непосредственно в поля критериев, вы можете ввести их в некоторые ячейки, а затем ссылаться на эти ячейки. Если вы решите позже изменить условия проверки, вы просто запишете новые значения на рабочем листе, не редактируя правило. Это сэкономит много времени.
Чтобы ввести ссылку на ячейку, либо введите ее в поле, перед которым стоит знак равенства, либо щелкните стрелку рядом с полем, а затем выберите ячейку с помощью мыши. Вы также можете щелкнуть в любом месте поля, а затем выбрать ячейку на листе.
Например, чтобы разрешить любое целое число, находящееся между 100 и 999, выберите критерии «минимум» и «максимум» в вкладке «Параметры» и введите в них адреса ячеек с этими числами:
Рис18
Вы также можете ввести формулу в ячейку, на которую указывает ссылка, и Excel проверит ввод на основе этой формулы.
Например, чтобы запретить пользователям вводить даты после сегодняшней даты, введите формулу =СЕГОДНЯ() в какую-нибудь ячейку, скажем, B1, а затем настройте правило проверки даты на основе этой ячейки:
Или вы можете ввести формулу =СЕГОДНЯ() непосредственно в поле Конечная дата, что будет иметь тот же эффект.
Правила проверки на основе формул
В ситуациях, когда невозможно определить желаемые критерии проверки на основе значения или ссылки на ячейку, вы можете выразить это с помощью формулы.
Например, чтобы ограничить ввод минимальным и максимальным значениями в существующем списке чисел, скажем, A1:A10, используйте следующие формулы:
=МИН($С$2:$С$10)
=МАКС($С$2:$С$10)
Обратите внимание, что мы фиксируем диапазон с помощью знака $ (абсолютная ссылка на ячейки), чтобы наше правило проверки Excel работало правильно для всех выбранных ячеек.
Как найти неверные данные на листе
Хотя Microsoft Excel позволяет применять проверку данных к ячейкам, в которых уже есть данные, он не уведомит вас, если некоторые из уже существующих значений не соответствуют критериям проверки.
Чтобы найти недействительные данные, которые попали в ваши рабочие листы до того, как вы добавили проверку данных, перейдите на вкладку «Данные» и нажмите «Проверка данных» > «Обвести неверные данные».
Это выделит все ячейки, которые не соответствуют критериям проверки.
Как только вы исправите неверную запись, отметка автоматически исчезнет. Чтобы удалить все отметки, перейдите на вкладку «Данные» и нажмите «Проверка данных» > «Удалить обводку неверных данных».
Как поделиться книгой с проверкой данных
Чтобы разрешить нескольким пользователям совместную работу над книгой, обязательно предоставьте к ней общий доступ после проверки данных.
После совместного использования книги ваши правила проверки данных продолжат работать, но вы не сможете ни изменить их, ни добавить новые правила.
Почему проверка данных Excel не работает?
Если проверка данных не работает должным образом на ваших листах, это, скорее всего, происходит по одной из следующих причин.
Проверка данных не работает для скопированных данных
Проверка данных в Excel предназначена для запрета ввода недопустимых данных непосредственно в ячейку, но не может помешать пользователям копировать недопустимые данные.
Хотя нет способа отключить клавиши копирования/вставки (кроме использования VBA), вы можете, по крайней мере, предотвратить копирование данных путем перетаскивания ячеек. Для этого выберите «Файл» > «Параметры» > «Дополнительно» > «Параметры редактирования» и снимите флажок «Включить маркер заполнения и перетаскивания ячеек».
Проверка данных Excel не активна
Кнопка «Проверка данных» не активна (выделена серым цветом), если вы вводите или изменяете данные в ячейке. Закончив редактирование ячейки, нажмите Enter или Esc, чтобы выйти из режима редактирования, а затем выполните проверку данных.
Проверка данных не может быть применена к защищенной или общей книге
Хотя существующие правила проверки продолжают работать в защищенных и общих книгах, невозможно изменить параметры проверки данных или настроить новые правила. Для этого сначала отмените общий доступ и/или снимите защиту с книги.
Неправильные формулы проверки данных
При проверке данных на основе формул в Excel необходимо проверить три важные вещи:
- Формула проверки не возвращает ошибок.
- Формула не ссылается на пустые ячейки.
- Используются правильные ссылки на ячейки.
Ручной пересчет формул включен
Если в Excel включен режим ручного расчета, невычисленные формулы могут помешать правильной проверке данных. Чтобы снова изменить параметр расчета Excel на автоматический, перейдите на вкладку «Формулы» > группу «Расчет», нажмите кнопку «Параметры расчета» и выберите «Автоматически».
Проверьте правильность формулы проверки данных
Для начала скопируйте формулу проверки в какую-нибудь ячейку, чтобы убедиться, что она не возвращает ошибку, такую как #Н/Д, #ЗНАЧ или #ДЕЛ/0!.
Если вы создаете пользовательское правило , формула должна возвращать логические значения ИСТИНА и ЛОЖЬ или приравненные к ним значения 1 и 0 соответственно.
Если вы используете критерий на основе формулы во встроенном правиле (как мы делали для проверки времени на основе текущего времени), он также может возвращать неправильное числовое значение.
Формула проверки данных не должна ссылаться на пустую ячейку
Если вы активируете опцию «Игнорировать пустые ячейки» при определении правила (обычно выбрано по умолчанию), то следите, чтобы ваши формулы или условия не ссылались на пустую ячейку.
В случае, когда одна или несколько ячеек, на которые есть ссылки в вашей формуле, пусты, то в проверяемой ячейке будет разрешено любое значение.
Абсолютные и относительные ссылки на ячейки в формулах проверки
При настройке правила проверки Excel на основе формулы помните, что все ссылки на ячейки в вашей формуле относятся к верхней левой ячейке в выбранном диапазоне.
Если вы создаете правило для нескольких ячеек и ваши критерии проверки содержат адреса конкретных ячеек , обязательно зафиксируйте ячейку в формуле при помощи абсолютной ссылки (со знаком $, например, $A$1), иначе ваше правило будет правильно работать только для первой ячейки.
Чтобы лучше проиллюстрировать это, рассмотрим следующий пример.
Предположим, вы хотите ограничить ввод данных в ячейках с A2 по A8 целыми числами от 100 (минимальное значение) до 999. Чтобы проще было при необходимости изменить критерии проверки, используем ссылки на ячейки с этими значениями, как показано на скриншоте ниже:
Это правило будет корректно выполняться только для первой ячейки диапазона – A2. Для ячейки A3 критерии максимума и минимума изменятся на E3 и F3. Поскольку эти ячейки пусты, то условие ввода теперь – любое число больше либо меньше нуля. Правда, символьные значения и дробные числа вы вводить не сможете, так как продолжает действовать ограничение на тип данных – целые числа.
Чтобы исправить формулу, просто введите «$» перед ссылками на столбцы и строки, чтобы зафиксировать их: =$E$2 и $F$2. Или используйте клавишу F4
для переключения между различными типами ссылок.
Вот как вы можете добавить и использовать проверку данных в Excel. Я благодарю вас за чтение и надеюсь ещё увидеть вас в нашем блоге!