Excel проверка ввода даты

 

Здравствуйте уважаемые знатоки!

Подскажите спомощью какой формулы можно узнать что текст введенный в ячейке А1 является датой? Дата вводится в формате дд.мм.гггг. Спасибо заранее!

Power Query, Power Pivot, Power BI и MS Excel спасут мир

 

китин

Пользователь

Сообщений: 931
Регистрация: 16.05.2013

ЕЧИСЛО ???

Вполне такой нормальный кинжальчик. Процентов на 100
<#0>

 

ЕЧИСЛО не подходит, так как в ячейке может быть введено просто чилсо тоже — например 55

Power Query, Power Pivot, Power BI и MS Excel спасут мир

 

Владимир

Пользователь

Сообщений: 8196
Регистрация: 21.12.2012

=ЯЧЕЙКА(«формат»;A1)=»D1″

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

Дело в том, что если в ячейке А1 стереть дату и ввести например текст, то его формат (формат ячейки А1) опять останется ДАТА, что приводит к неправильному результату.

Power Query, Power Pivot, Power BI и MS Excel спасут мир

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

показали бы в примере что проверяете дата для экселя число, если у вас идут данные вперемешку реально число и число (дата) то проблематично что то проверить (мое мнение), один из вариантов отсеивать числа не входящие в диапазон определенных нужных дат и то сомнительно

Лень двигатель прогресса, доказано!!!

 

Владимир

Пользователь

Сообщений: 8196
Регистрация: 21.12.2012

#7

24.05.2016 12:15:56

Цитата
Самир Мамедов написал:
то его формат (формат ячейки А1) опять останется ДАТА

Если Вы не можете поменять формат ячейки, то это совсем другой уже вопрос. А по делу см. файл.

Прикрепленные файлы

  • ячейка.xls (19.5 КБ)

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

Владимир! Большое человеческое спасибо!!

Power Query, Power Pivot, Power BI и MS Excel спасут мир

 

Бахтиёр

Пользователь

Сообщений: 1926
Регистрация: 15.01.2016

Excel 365

#9

24.05.2016 20:36:57

Цитата
Самир Мамедов написал:
если в ячейке А1 стереть дату и ввести например текст, то его формат (формат ячейки А1) опять останется ДАТА, что приводит к неправильному результату.

может лучше так?

Код
=И(ЯЧЕЙКА("формат";A1)="D1";ЕЧИСЛО(A1))

если ввести текст, среагирует сразу

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Но не среагирует, если ввести число. Например, 2. Это в первых днях начала 1900 года.

 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

Вить, если это число 2 будет в формате даты — не вижу противоречий.
Другой вопрос, что при смене только формата(без изменения данных в ячейке) — формула не сработает.
Предлагаю вариант с подсветкой через УФ — тогда сработает даже при тупом изменении формата. Если не дата — ячейка будет с красной заливкой.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Бахтиёр

Пользователь

Сообщений: 1926
Регистрация: 15.01.2016

Excel 365

#12

24.05.2016 20:57:54

Цитата
The_Prist написал:
Вить, если это число 2 будет в формате даты — не вижу противоречий.

+1

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#13

24.05.2016 22:39:53

Цитата
The_Prist написал: если это число 2 будет в формате даты — не вижу противоречий

И я не вижу. Но вопрос: нужна ли такая дата автору темы?

Цитата
Самир Мамедов написал: …узнать что текст введенный в ячейке А1 является датой
 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

Вить, так ты же сам правильную фразу и процитировал — узнать является ли значение датой.
Кто скажет что 02.01.1900 это не дата пусть первым бросит в меня камень ©  :) Мы знаем даты и меньше — благо история летоисчисления начинается у людей куда раньше, чем у Excel.
Однако по-хорошему формула должна выглядеть так:
=И(ЯЧЕЙКА(«формат»;A1)=»D1″;ЕЧИСЛО(A1);НЕ(ЕОШ(ПОИСК(«??.??.????»;ТЕКСТ(A1;»ДД.мм.ГГГГ»)))))
тогда будет и формат соблюден и при вводе отрицательных чисел(при системе дат от 1900 года) ячейка будет подсвечена, т.к. текст там дату даже рядом не будет напоминать.

Изменено: The_Prist24.05.2016 22:54:43

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Да не об этом предупреждаю!
Добавить проверку на число >= (возможно, и <=) нужной даты

 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

Вить, да поняли мы все это, не горячись. Но ведь автор пока этого не просил — откуда нам знать надо оно или нет? Особенно если учесть, что автора вроде как полностью устроил ответ из 7-го сообщения, а мы так — разминаемся :)

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Если нужно проверить, что введенные данные являются датой с точки зрения Excel и может участвовать в формулах, можно вычитать введенное значение из Сегодня(), если ошибка — значит ввели не дату. Такая формула не зависит от формата ячейки, региональных особенностей и отображения даты.

=ЕОШИБКА(СЕГОДНЯ()-A1)

Истина  — в A1 введена не дата
Ложь — в A1 введена дата

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Сергей Чачин, лишнее это. СЕГОДНЯ — летучая.
=ЕОШИБКА(-A1)
И при ЛОЖЬ не обязательно дата в ячейке (число ноль, 45625, пусто). Об этом еще в соощении №3 написано.

Да и вообще: логика для восприятия должна быть правильная, а то когда надо видеть ИСТИНА (да, это нужный результат), получаем ЛОЖЬ

 

Ігор Гончаренко

Пользователь

Сообщений: 13746
Регистрация: 01.01.1970

#19

04.12.2020 14:50:33

Цитата
Самир Мамедов написал:
Как проверить является ли данное в ячейке ДАТОЙ без макроса,
Код
=ЛЕВСИМВ(ЯЧЕЙКА("формат";СсылкаНаЯчейку);1) = "D"

здесь
СсылкаНаЯчейку — адрес ячейки, которую нужно проверить
если результат функции ИСТИНА — в проверяемой ячейке дата

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Александр Котол

Пользователь

Сообщений: 29
Регистрация: 01.01.1970

#20

22.12.2021 15:22:55

Цитата
написал:
НЕ(ЕОШ(ПОИСК(«??.??.????»;ТЕКСТ(A1;»ДД.мм.ГГГГ»))))

Добрый день!
Подскажите, пожалуйста, что делает этот кусок? Я думал ищет по маске, чтобы был формат ДД.мм.ГГГГ, но она не реагирует написано 20.12.20213 или 20.12.2021

Прикрепленные файлы

  • тест.xlsx (8.48 КБ)

Используйте проверку данных, чтобы ограничить тип данных или значения, которые пользователи вводит в ячейку, например раскрывающийся список.

Браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Проверьте, как это работает!

  1. Выделите ячейки, для которых необходимо создать правило.

  2. Выберите Данные > Проверка данных.

    Проверка данных

  3. На вкладке Параметры в списке Тип данных выберите подходящий вариант:

    • Целое число, чтобы можно было ввести только целое число.

    • Десятичное число, чтобы можно было ввести только десятичное число.

    • Список, чтобы данные выбирались из раскрывающегося списка.

    • Дата, чтобы можно было ввести только дату.

    • Время, чтобы можно было ввести только время.

    • Длина текста, чтобы ограничить длину текста.

    • Другой, чтобы задать настраиваемую формулу.

  4.  В списке Значение выберите условие.

  5. Задайте остальные обязательные значения с учетом параметров Тип данных и Значение.

  6. Откройте вкладку Подсказка по вводу и настройте сообщение, которое будут видеть пользователи при вводе данных.

  7. Установите флажок Отображать подсказку, если ячейка является текущей, чтобы при выделении ячеек или наведении на них указателя пользователю отображалось сообщение.

  8. Откройте вкладку Сообщение об ошибке, чтобы настроить сообщение об ошибке, и выберите Вид.

  9. Нажмите ОК.

    Теперь, если пользователь попытается ввести недопустимое значение, появится сообщение об ошибке с настроенным сообщением.

Скачивание примеров

Скачать образец книги со всеми примерами проверки данных из этой статьи

Если вы создаете лист, на котором пользователи должны вводить данные, может потребоваться ограничить ввод определенным диапазоном дат или чисел либо разрешить ввод только положительных целых чисел. В Excel можно ограничить ввод данных в определенные ячейки с помощью функции проверка данных, предлагающей пользователям вводить допустимые данные при выделении ячейки и отображающей сообщение об ошибке, если пользователь вводит недопустимые данные.

Ограничение ввода данных

  1. Выделите ячейки, для которых нужно ограничить ввод данных.

  2. На вкладке Данные щелкните Проверка данных > Проверка данных.

    Примечание: Если команда проверки недоступна, возможно, лист защищен или книга является общей. Если книга является общей или лист защищен, изменить параметры проверки данных невозможно. Дополнительные сведения о защите книги см. в статье Защита книги.

  3. В поле Тип данных выберите тип данных, который нужно разрешить, и заполните ограничивающие условия и значения.

    Примечание: Поля, в которых вводятся ограничивающие значения, помечаются на основе выбранных вами данных и ограничивающих условий. Например, если выбран тип данных «Дата», вы сможете вводить ограничения в полях минимального и максимального значения с пометкой Начальная дата и Конечная дата.

Запрос для пользователей на ввод допустимых значений

Когда пользователь щелкает ячейку, содержащую требования к вводу данных, можно отобразить сообщение о том, какие данные допустимы.

  1. Выделите ячейки, в которых для пользователей нужно отображать запрос на ввод допустимых данных.

  2. На вкладке Данные щелкните Проверка данных > Проверка данных.

    Примечание: Если команда проверки недоступна, возможно, лист защищен или книга является общей. Если книга является общей или лист защищен, изменить параметры проверки данных невозможно. Дополнительные сведения о защите книги см. в статье Защита книги.

  3. На вкладке Подсказка по вводу установите флажок Отображать подсказку, если ячейка является текущей.

  4. В поле Заголовок введите заголовок сообщения.

  5. В поле Подсказка по вводу введите сообщение, которое должно отображаться.

Отображение сообщения об ошибке при вводе недопустимых данных

При наличии ограничений для данных и при вводе пользователем недопустимых данных в ячейку можно отображать сообщение об ошибке.

  1. Выберите ячейки, в которых нужно отображать сообщение об ошибке.

  2. На вкладке Данные щелкните Проверка данных > Проверка данных.

    Примечание: Если команда проверки недоступна, возможно, лист защищен или книга является общей. Если книга является общей или лист защищен, изменить параметры проверки данных невозможно. Дополнительные сведения о защите книги см. в статье Защита книги.

  3. Н вкладке Сообщение об ошибке в поле Заголовок введите заголовок сообщения.

  4. В поле Сообщение введите сообщение, которое должно отображаться при вводе недопустимых данных.

  5. Выполните одно из следующих действий.

    Задача

    В контекстном меню
    Вид
    выберите

    Требовать от пользователей исправления ошибки перед продолжением

    Остановка

    Предупреждать пользователей о том, что данные недопустимы, и требовать от них выбора варианта Да или Нет, чтобы указать, нужно ли продолжать

    Предупреждение

    Предупреждать пользователей о том, что данные недопустимы, но разрешить продолжать после закрытия предупреждающего сообщения

    Сообщение

Добавление проверки данных в ячейку или диапазон ячеек

Примечание: Первые два действия, указанные в этом разделе, можно использовать для добавления любого типа проверки данных. Действия 3–7 относятся к созданию раскрывающегося списка. 

  1. Выделите одну или несколько ячеек, к которым нужно применить проверку.

  2. На вкладке Данные в группе Работа с данными нажмите кнопку Проверка данных.

  3. На вкладке Параметры в поле Разрешить выберите Список.

  4. В поле Источник введите значения списка, разделенные запятыми. Например, введите Низкий,Средний,Высокий.

  5. Убедитесь, что установлен флажок Список допустимых значений. В противном случае рядом с ячейкой не будет отображена стрелка раскрывающегося списка.

  6. Чтобы указать, как обрабатывать пустые (нулевые) значения, установите или снимите флажок Игнорировать пустые ячейки.

  7. Протестируйте правильность работы проверки данных. Попробуйте ввести в ячейку сначала допустимые, а потом недопустимые данные и убедитесь, что параметры проверки применяются, как вы хотите, а ваши сообщения появляются в нужный момент.

Примечания: 

  • После создания раскрывающегося списка убедитесь, что он работает так, как нужно. Например, можно проверить, достаточно ли ширины ячеек для отображения всех ваших записей.

  • Отмена проверки данных. Выделите ячейки, проверку которых вы хотите отменить, щелкните Данные > Проверка данных и в диалоговом окне проверки данных нажмите кнопки Очистить все и ОК.

В таблице перечислены другие типы проверки данных и указано, как применить их к данным на листе.

Чтобы:

Сделайте следующее:

Разрешить вводить только целые числа из определенного диапазона

  1. Выполните действия 1–2, указанные выше.

  2. В списке Разрешить выберите значение Целое число.

  3. В поле Данные выберите необходимый тип ограничения. Например, для задания верхнего и нижнего пределов выберите ограничение Диапазон.

  4. Введите минимальное, максимальное или определенное разрешенное значение.

    Можно также ввести формулу, которая возвращает числовое значение.

    Например, допустим, что вы проверяете значения в ячейке F1. Чтобы задать минимальный объем вычетов, равный значению этой ячейки, умноженному на 2, выберите пункт Больше или равно в поле Данные и введите формулу =2*F1 в поле Минимальное значение.

Разрешить вводить только десятичные числа из определенного диапазона

  1. Выполните действия 1–2, указанные выше.

  2. В поле Разрешить выберите значение Десятичный.

  3. В поле Данные выберите необходимый тип ограничения. Например, для задания верхнего и нижнего пределов выберите ограничение Диапазон.

  4. Введите минимальное, максимальное или определенное разрешенное значение.

    Можно также ввести формулу, которая возвращает числовое значение. Например, для задания максимального значения комиссионных и премиальных в размере 6% от заработной платы продавца в ячейке E1 выберите пункт Меньше или равно в поле Данные и введите формулу =E1*6% в поле Максимальное значение.

    Примечание: Чтобы пользователи могли вводить проценты, например «20 %», в поле Разрешить выберите значение Десятичное число, в поле Данные задайте необходимый тип ограничения, введите минимальное, максимальное или определенное значение в виде десятичного числа, например 0,2, а затем отобразите ячейку проверки данных в виде процентного значения, выделив ее и нажав кнопку Процентный формат Изображение кнопки на вкладке Главная в группе Число.

Разрешить вводить только даты в заданном интервале времени

  1. Выполните действия 1–2, указанные выше.

  2. В поле Разрешить выберите значение Дата.

  3. В поле Данные выберите необходимый тип ограничения. Например, для разрешения даты после определенного дня выберите ограничение Больше.

  4. Введите начальную, конечную или определенную разрешенную дату.

    Вы также можете ввести формулу, которая возвращает дату. Например, чтобы задать интервал времени между текущей датой и датой через 3 дня после текущей, выберите пункт Между в поле Данные, потом введите =СЕГОДНЯ() в поле Дата начала и затем введите =СЕГОДНЯ()+3 в поле Дата завершения.

Разрешить вводить только время в заданном интервале

  1. Выполните действия 1–2, указанные выше.

  2. В поле Разрешить выберите значение Время.

  3. В поле Данные выберите необходимый тип ограничения. Например, для разрешения времени до определенного времени дня выберите ограничение меньше.

  4. Укажите время начала, окончания или определенное время, которое необходимо разрешить. Если вы хотите ввести точное время, используйте формат чч:мм.

    Например, если в ячейке E2 задано время начала (8:00), а в ячейке F2 — время окончания (17:00) и вы хотите ограничить собрания этим промежутком, выберите между в поле Данные, а затем введите =E2 в поле Время начала и =F2 в поле Время окончания.

Разрешить вводить только текст определенной длины

  1. Выполните действия 1–2, указанные выше.

  2. В поле Разрешить выберите значение Длина текста.

  3. В поле Данные выберите необходимый тип ограничения. Например, для установки определенного количества знаков выберите ограничение Меньше или равно.

  4. В данном случае нам нужно ограничить длину вводимого текста 25 символами, поэтому выберем меньше или равно в поле Данные и введем 25 в поле Максимальное значение.

Вычислять допустимое значение на основе содержимого другой ячейки

  1. Выполните действия 1–2, указанные выше.

  2. В поле Разрешить выберите необходимый тип данных.

  3. В поле Данные выберите необходимый тип ограничения.

  4. В поле или полях, расположенных под полем Данные, выберите ячейку, которую необходимо использовать для определения допустимых значений.

    Например, чтобы допустить ввод сведений для счета только тогда, когда итог не превышает бюджет в ячейке E1, выберите значение Число десятичных знаков в списке Разрешить, ограничение «Меньше или равно» в списке «Данные», а в поле Максимальное значение введите >= =E1.

Примечания: 

  • В примерах ниже при создании формул с условиями используется настраиваемый вариант. В этом случае содержимое поля «Данные» не играет роли.

  • Представленные в этой статье снимки экрана созданы в Excel 2016, но функции аналогичны Excel в Интернете.

Чтобы

Введите формулу

Значение в ячейке, содержащей код продукта (C2), всегда начинается со стандартного префикса «ID-» и имеет длину не менее 10 (более 9) знаков.

=И(ЛЕВСИМВ(C2;3)=»ID-«;ДЛСТР(C2)>9)

Пример 6. Формулы для проверки данных

Ячейка с наименованием продукта (D2) содержала только текст.

=ЕТЕКСТ(D2)

Пример 2. Формулы для проверки данных

Значение в ячейке, содержащей чью-то дату рождения (B6), было больше числа лет, указанного в ячейке B4.

=ЕСЛИ(B6<=(СЕГОДНЯ()-(365*B4));TRUE,FALSE)

Пример проверки данных с ограничением вводимого возраста минимальным значением

Все данные в диапазоне ячеек A2:A10 содержали уникальные значения.

=СЧЁТЕСЛИ($A$2:$A$10;A2)=1

Пример 4. Формулы для проверки данных

Примечание: Необходимо сначала ввести формулу проверки данных в ячейку A2, а затем скопировать эту ячейку в ячейки A3:A10 так, чтобы второй аргумент СЧЁТЕСЛИ соответствовал текущей ячейке. Часть A2)=1 изменится на A3)=1, A4)=1 и т. д.

Дополнительные сведения

Адрес электронной почты в ячейке B4 содержал символ @.

=ЕЧИСЛО(НАЙТИ(«@»,B4))

Пример проверки данных для контроля наличия символа @ в адресе электронной почты

Совет: Если вы владелец малого бизнеса и хотите получить дополнительные сведения о настройке Microsoft 365, посетите раздел Справка и обучение для малого бизнеса.

Хотите узнать больше?

Подключитесь к эксперту. Учитесь у живых инструкторов.

Создание раскрывающегося списка

Добавление и удаление элементов раскрывающегося списка

Дополнительные сведения о проверке данных


При вводе большого количества информации в ячейки таблицы легко допустить ошибку. В EXCEL существует инструмент для проверки введенных данных сразу после нажатия клавиши ENTER – Проверка данных.

Инструмент

Проверка данных

(

) не был бы столь популярным, если бы его функциональность ограничивалась бы только собственно проверкой. Ниже кратко перечислены основные приемы работы с этим инструментом.

A. Проверка введенных значений

Как видно на рисунке снизу, условия проверки вводимого значения можно настроить очень гибко.

Можно разрешить ввод значений в ячейку только определенного типа, выбрав необходимое условие из выпадающего (раскрывающегося) списка:


  • Целое число

    . В ячейку разрешен ввод только целых чисел, причем принадлежащих определенному диапазону;

  • Действительное

    . В ячейку разрешен ввод только чисел, в том числе с десятичной частью (нельзя ввести текст, дату ввести можно);

  • Дата.

    Предполагается, что в ячейку будут вводиться даты начиная от 01.01.1900 до 31.12.9999. Подробнее о формате Дата  — в статье

    Как Excel хранит дату и время


  • Время

    . Предполагается, что в ячейку с

    Проверкой данный

    этого типа будет вводиться время. Например, на рисунке ниже приведено условие, когда в ячейку разрешено вводить время принадлежащее только второй половине дня, т.е. от 12:00:00 до 23:59:59. Вместо утомительного ввода значения 12:00:00 можно использовать его числовой эквивалент 0,5. Возможность ввода чисел вместо времени следует из того, что любой дате в EXCEL сопоставлено положительное целое число, а следовательно времени (т.к. это часть суток), соответствует дробная часть числа (например, 0,5 – это полдень). Числовым эквивалентом для 23:59:59 будет 0,99999.


  • Длина текста

    . В ячейку разрешен ввод только определенного количества символов. При этом ограничении можно вводить и числа и даты, главное, чтобы количество введенных символов не противоречило ограничению по длине текста. Например, при ограничении количества символов менее 5, нельзя ввести дату позднее 13/10/2173, т.к. ей соответствует число 99999, а 14/10/2173 — это уже 100000, т.е. 6 символов. Интересно, что при ограничении, например, менее 5 символов, вы не сможете ввести в ячейку формулу

    =КОРЕНЬ(2)

    , т.к. результат =1,4142135623731 (в зависимости от заданной в EXCEL точности), а вот

    =КОРЕНЬ(4)

    – сможете, ведь результат =2, а это только 1 символ.

  • Список

    . Наверное, самый интересный тип данных. В этом случае ввод значений в ячейку можно ограничить ранее определенным списком. Например, если в качестве источника указать через точку с запятой единицы измерения товара

    шт;кг;кв.м;куб.м

    , то ничего другого, кроме этих 4-х значений из списка вам выбрать не удастся. В источнике можно указать диапазон ячеек, содержащий заранее сформированный список или ссылку на

    Именованную формулу

    . Пример приведен в статье

    Выпадающий (раскрывающийся) список


  • Другой

    . В ячейку разрешен ввод значений удовлетворяющих более сложным критериям. Для задания критериев необходимо использовать формулу. Рассмотрим это условие подробнее.

При выбранном типе

Другой,

в поле

Формула

нужно ввести формулу для расчета логического значения. Если оно принимает значение ИСТИНА, то такое значение разрешено вводить в ячейку, если ЛОЖЬ, то ваше значение ввести не получится. В качестве аргумента формулы нужно использовать ссылку на саму ячейку, к которой применяется

Проверка данных

или ссылку на зависящую от нее ячейку. Например,


Чтобы


Введите формулу


Пояснение

Ячейка

B2

содержала только текст

=

ЕТЕКСТ(B2)

В

Типе данных

нет возможности выбрать тип

Текст

, поэтому приходится этого добиваться косвенно. Вы можете

Проверку данных

применить прямо к ячейке

B2

Допустить ввод значения в ячейку

B1

только в случае, если после ввода значение в ячейке

D1

будет больше 100, в

D2

меньше, чем 400

=

И(D1>100;D2<400)


Проверку данных

применяем к ячейке

B1

. При этом в ячейке

D1

введена формула

=B1*2

, а в

D2

– формула

=B1*3

. Хотя эта формула эквивалентна ограничению

Действительное

с диапазоном от 50 до 133,33, но при более сложных связях ячеек, этот прием может быть полезен

Значение в ячейке, содержащей возраст работника (

С1

), всегда должно быть больше числа полных лет работы (

D1

) плюс 18 (минимальный возраст приема на работу)

=

ЕСЛИ(C1>D1+18;ИСТИНА;ЛОЖЬ)

При заполнении таблицы данными о возрасте и стаже работы можно поставить эту проверку для обеих ячеек (

C1

и

D1

). Для этого нужно выделить сразу 2 ячейки, вызвать

Проверку данных

и немного модифицировать формулу

=ЕСЛИ($C1>$D1+18;ИСТИНА;ЛОЖЬ)

Все данные в диапазоне ячеек

A1:A20

содержали

уникальные

значения

=

СЧЁТЕСЛИ($A$1:$A$20;A1)=1

Или

=

ПОИСКПОЗ(A1;$A:$A;0)=СТРОКА(A1)

Необходимо выделить ячейки

А1:А20

, вызвать инструмент

Проверка данных

и ввести формулу. Вторую формулу можно использовать для всего столбца

А

, для этого необходимо выделить не диапазон, а весь столбец

А

Значение в ячейке, содержащей имя кода продукта (

B5

), всегда начиналось со стандартного префикса «ID-» и имело длину не менее 10 знаков.

=

И(ЛЕВСИМВ(B5;3)=»ID-«; ДЛСТР(B5)>9)

Проверку данных вводим для ячейки

B5

При выделении нескольких ячеек, там где нужно, не забывайте указывать абсолютную ссылку на ячейки (например,

$A$1:$A$20

).

При использовании инструмента

Проверка данных

, предполагается, что в ячейку будут вводиться константы (

123, товар1, 01.05.2010

и пр.), хотя никто не запрещает вводить и формулы. В этом случае проверяться все равно будет результат вычисления формулы. Вообще вводить формулы в ячейки с проверкой данных не советую – легко запутаться. В этом случае советую использовать

Условное форматирование

.


В.

Отображение комментария, если ячейка является текущей.

Используйте вкладку

Сообщение для вывода

, чтобы отображать комментарий.

В отличие от обычного примечания (

), которое пропадает после того, как курсор мыши уходит с ячейки (если не активна опция

Показать все примечания

), этот комментарий отображается всегда, когда ячейка выделена.


С.

Вывод подробного сообщения об ошибке.

После ввода ошибочного значения

Проверка данных

может отобразить подробное сообщение о том, что было сделано не так. Это некий аналог

Msgbox()

из

VBA

.


D.

Создание связанных диапазонов (списков)

Если в качестве

Типа данных

на вкладке

Параметры

мы выберем

Список

, то сможем сформировать связанные диапазоны. Тема так обширна, что она выделена в отдельную статью

Связанный список

.


Е. Использование в правилах ссылок на другие листы

В EXCEL 2007 в

Проверке данных

, как и в

Условном форматировании

нельзя впрямую указать ссылку на диапазоны другого листа, например, так

=Лист2!$A$1

. Позволяют обойти это ограничение использование

Имен

.

Если в

Проверке данных

нужно сделать, например, ссылку на ячейку

А1

другого листа, то нужно сначала определить

Имя

для этой ячейки, а затем сослаться на это

имя

в правиле

Проверке данных

.

В Excel 2010, напротив, можно использовать правила проверки данных, ссылающиеся на значения на других листах. В Excel 2007 и Excel 97-2003 проверка данных этого типа не поддерживается и не отображается на листе. Однако все правила проверки данных остаются доступными в книге и применяются при повторном открытии книги в Excel 2010, если они не были изменены в Excel 2007 или Excel 97-2003.


F. Как срабатывает Проверка данных


Проверка данных

явно срабатывает при вводе в ячейку значений с клавиатуры с последующим нажатием клавиши

ENTER

. В этом случае появляется окно с описанием ошибки.

Если значения вставляются через

Буфер обмена

(

Вставить значения

) или с использованием сочетания клавиш

CTRL

+

D

(копирование значения из ячейки сверху) или копируются

Маркером заполнения

сверху вниз, то проверка в явном виде не осуществляется. Кроме того, при копировании значений можно вообще случайно удалить правила

Проверки данных

, например если в ячейке источнике не определена

Проверка данных

, а данные из нее вставляются через

Буфер обмен

а с использованием комбинации клавиш

CTRL+V

.

Поясним на примере. Предположим, к ячейке

А1

применена

Проверка данных

с условием проверки

Другой

, где в поле формула введено

=СТРОКА(A1)=1

, т.е. для всех ячеек из первой строки условие

Проверки данных

будет принимать значение ИСТИНА, для других строк — ЛОЖЬ вне зависимости от содержания ячейки.

Теперь выделим ячейку

А2

и нажмем

CTRL+D

. Значение из

А1

скопируется в

А2

вместе с условием

Проверки данных

. Несмотря на то, что теперь условие

Проверки данных

будет принимать значение ЛОЖЬ, никакого предупреждающего сообщения выведено не будет. Чтобы убедиться, что данные в ячейках соответствуют условиям определенным в

Проверке данных

, нужно вызвать команду меню

Обвести неверные данные

(

). Ячейки с неверными данными будут обведены красными овалами. Теперь опять выделим ячеку

А2

и нажмем клавишу

F2

(войдем в режим Правки), затем нажмем

ENTER

— появится окно с сообщением, что введенное значение неверно.

Есть еще один способ обхода проверки данных. Предположим, ввод в ячейку ограничен значениями от 1 до 3. Теперь в любую другую ячейку без

Проверки данных

введем значение 4. Выделим эту ячейку, в

Строке формул

выделим значение 4 и скопируем его в

Буфер обмена

. Теперь выделим ячейку с

Проверкой данных

и нажмем

CTRL+V

. Значение вставилось в ячейку! Кроме того,

Проверка данных

осталась нетронутой в отличие от случая, когда через

Буфер обмена

, например, вставляется значение из WORD. Чтобы убедиться, что данные в ячейке не соответствуют условиям определенным в

Проверке данных

, нужно вызвать команду меню

Обвести неверные данные

(

).


G. Поиск ячеек с Проверкой данных

Если на листе много ячеек с

Проверкой данных

, то можно использовать инструмент

Выделение группы ячеек

(

).

Опция

Проверка данных

этого инструмента позволяет выделить ячейки, для которых проводится проверка допустимости данных (заданная с помощью команды

). При выборе переключателя

Всех

будут выделены все такие ячейки. При выборе опции

Этих

же

выделяются только те ячейки, для которых установлены те же правила проверки данных, что и для активной ячейки.

Хитрости »

1 Май 2011              113504 просмотров


Проверка данных

Проверка данных является неплохим инструментом Excel для контроля за вносимыми на листах изменениями, не прибегая к помощи VBA. С её помощью можно ограничить ввод в ячейку, разрешив вводить только определенные даты либо числа. При этом можно запретить вводить текст в тех ячейках, в которых должны быть исключительно числа, а так же задать диапазон чисел(например, только от 1 до 1000).
Для чего это вообще может быть нужно? Например, есть некий шаблон с формулами и для корректной работы формул требуются правильно введенные исходные данные. С помощью Проверки данных можно разрешить пользователю вводить только тот тип и интервал данных, который может обработать формула, не возвращая значение ошибки или некорректный результат.
Иными словами, проверка данных предназначена для контроля вводимых в ячейки данных. При правильном использовании очень мощная и удобная вещь в различных шаблонах, которые должны заполняться разными людьми.

Чтобы использовать проверку вводимых данных необходимо выделить ячейку или несколько ячеек, ввод данных в которые надо отслеживать и ограничить. Далее переходим на вкладку Данные(Data)Проверка данных(Data Validation). Появится окно проверки данных:
Проверка данных

    Настройка проверки данных имеет три вкладки

  • вкладка Параметры
  • вкладка Сообщение для ввода
  • вкладка Сообщение об ошибке
  •  
    Особенности и возможности работы с проверкой данных

  • Как скопировать проверку данных на другие ячейки
  • Как удалить проверку данных из ячеек
  • Маленькая хитрость использования проверки данных
  • Как обойти проверку данных или маленькая ложка дегтя

 
вкладка

Параметры(Settings)

Это основная вкладка, в которой задаются основные параметры проверки данных.
В поле Тип данных(Allow) — выбирается непосредственно тип данных, который должен быть записан в ячейке. Всего доступно 8 типов:

Любое значение, Целое число, Действительное, Список, Дата, Время, Длина текста, Другой(Any Value, Whole number, Decimal, List, Date, Time, Text lenght, Custom)

. Пункт

Любое значение(Any Value)

установлен по умолчанию, проверка не осуществляется. Подробно про пункт

Списки(List)

и как их создавать можно посмотреть и почитать в статье Выпадающие списки. Там все подробно и с нюансами расписано про списки в проверке данных, поэтому в данной статье рассмотрим оставшиеся 6 типов. Если кратко, то при выборе пункта Список в ячейке появляется выпадающий список допустимых значений. И ввести можно только то значение, которое присутствует в списке
Список в ячейке

Остальные типы данных:

  • Целое число(Whole number) — говорит само за себя. После установки такой проверки в ячейку можно будет внести только целое число. Т.е. число, не имеющее дробного остатка(9,1 например уже нельзя будет ввести). Так же нельзя будет ввести произвольный текст. Чаще всего подобная проверка применяется в полях для записи кол-ва штук товара и т.п. Т.е. там, где не может быть дробных значений.
  • Действительное(Decimal) — тоже, что и в предыдущем пункте, но ввести можно любое число — хоть целое, хоть дробное, но невозможно будет ввести текст
  • Примечание: применив данные типы проверок, внести в ячейку можно только число. Занести текст Excel уже не разрешит. Однако стоит помнить, что дата и время Excel воспринимает и хранит именно как ЧИСЛОВЫЕ значения, поэтому ввод даты и времени тоже будет разрешен, если он не противоречит остальным условиям проверки(см.ниже). Но для проверки Целое число разрешен будет ввод только даты, т.к. время Excel хранит как дробное значение(кроме 24:00:00 и 00:00:00, которые Excel воспринимает как 1 и 0 соответственно). Более подробно о восприятии Excel-ем данных читайте в статье Как Excel воспринимает данные?.

  • Дата(Date) — В ячейке может содержаться только значение даты. Дата может быть записана в любом формате, допустимом в текущей локализации Windows. Здесь тот же нюанс, что и проверкой на числа, только в обратную сторону — любая дата это число, поэтому по сути можно будет ввести любое целое число, которое может быть переведено Excel-м в дату.
  • Время(Time) — можно записывать значения в формате времени для текущей локализации и так же как с датой в ячейку можно будет вводить не только время, но и любые числа: целые или дробные
  • Длина текста(Text lenght) — позволяет ограничить количество вводимых в ячейку символов. Данные могут являться и числом и текстом и временем. Чем угодно, только должны соответствовать остальным условиям проверки. Часто применяется для контроля ввода данных по ИНН, КПП, БИК, артикулам и т.п.
  • Если посмотреть на картинку в начале статьи, то можно увидеть еще три поля, помимо тех, которые я перечислил: Значение(Data), Минимум(Minimum) и Максимум(Maximum). Поле Значение содержит несколько вариантов проверки: Между, Вне, Равно, Больше, Меньше, Больше или равно, Меньше или равно(between, not between, equal to, not equal to, greater than, less than, greater than or equal to, less than or equal to) и доступно оно только при выборе Типа данных Целое число, Действительное, Дата, Время, Длина текста. Для других типов поле Значение недоступно. В зависимости от того, какой пункт выбран в поле Значение появляются дополнительные поля: Минимум и Максимум. При этом может быть только одно поле и название может быть иным. Например, для варианта Равно будет показано только одно поле и называться оно будет Значение(Value). Но здесь нет никаких подводных камней и разобраться с этими полями можно не напрягаясь и без поллитры :)

    По сути все пункты довольно красноречивы и пояснять подробно каждый, думаю, смысла нет. Например, Между(between) — указывается интервал дат или чисел, в который должно входить условие(например целое число от 1 до 12: Минимум = 1, Максимум = 12). Если пользователь попытается ввести число за пределами указанного интервала(скажем число 0, -3 или 14), то Excel выдаст сообщение об ошибке(см.ниже). Вариант Больше или равно(greater than or equal to) позволит вносить только положительные значения больше нуля, если указать в поле Минимум значение 1.
    Чуть большее внимание следует уделить варианту проверки Вне(not between). При установленном значении Вне, в ячейку можно будет внести только данные, которые не входят в диапазон, указанный в полях Минимум и Максимум. Т.е. при тех же условиях от 1 до 12 ввести можно будет и 0 и -3 и 14, но нельзя будет ввести 1 или 10.
    При этом в полях для ввода значений допускается указать ссылку на ячейку. Например, в ячейке A1 записана начальная дата приема заявок, в B1 — конечная дата. И надо установить в ячейках A2:A50 проверку на интервал дат, указанных как раз в A1 и B1. Для этого выделяем ячейки A2:A50 и создаем в них проверку данных: Тип данных: Дата, Значение: Между, Начальная дата: =A1, Конечная дата: =B1. Теперь можно регулировать интервал без изменения самой проверки данных — просто изменяя значения ячеек A1 и B1.

  • Другой(Custom) — на мой взгляд самый интересный и самый мощный тип проверки. Здесь нам предоставляется возможность более широко контролировать ввод данных. Для заполнения есть только одно поле — Формула(Formula). В него необходимо записать формулу и при каждом вводе значений в ячейку, Excel проверит введенное выражение на ИСТИНУ. Если быть точнее то Excel сначала вычислит формулу в этом поле ориентируясь на введенное в ячейку с проверкой данных значение, а потом проверит — возвращает ли формула значение ИСТИНА(TRUE). Если результатом будет ИСТИНА(TRUE), то введенное значение будет сохранено в ячейке, а если ЛОЖЬ(FALSE), то будет выдано окно с сообщением об ошибке:
    Сообщение об ошибке

    Приведу простой пример. В ячейку А1 введем число 1. Выделяем ячейку В1 — назначаем проверку данных-Другой. В поле Формула вписываем: =B1=A1. Теперь в ячейку В1 можно вписать только значение, которое полностью идентично значению в ячейке А1.
    Обращаю особое внимание на то, что в большинстве случаев в вводимой формуле должно происходить некое сравнение с той ячейкой, в которой создается проверка данных. Например, если мы хотим, чтобы в В1 можно было ввести только значение текущей даты, то мы должны записать формулу так:
    =B1=СЕГОДНЯ()
    =B1=TODAY()
    Т.е. мы сравниваем введенное в В1 значение с выражением, записанным правее от знака равенства. А правее у нас функция СЕГОДНЯ(TODAY), которая возвращает текущую дату.

    Важно: если проверка данных в дальнейшем будет скопирована в другие ячейки, то ссылки будут смещены так, будто это простая формула. Поэтому при создании формул в проверке данных необходимо учитывать возможность смещения и при необходимости закреплять ссылки(знак доллара — $).


  •  
    Вкладка

    Сообщение для ввода (Input Message)

    Здесь указывается текст, который будет отображаться при выделении ячейки с проверкой данных:
    Сообщение
    Самое удобное в данном сообщение то, что можно не устанавливать саму проверку данных, а заполнить только эту вкладку. Тогда сообщение будет появляться при выделении ячейки, но никаких ограничений для ввода в ячейку не будет. Т.е. использовать эту возможность просто для дополнительного информирования о предпочтительном формате данных или просто указывать тип вводимой в ячейку информации.

     
    Вкладка

    Сообщение об ошибке(Error Alert)

    Здесь указывается отображать сообщение об ошибочном вводе или нет, и сам тип выводимого сообщения об ошибке.

    • Выводить сообщение об ошибке(Show error alert after invalid data is entered) — в большинстве случаев необходимо установить галочку. Если галочка снята, то проверка вводимых в ячейку данных не будет осуществляться.
    • Вид(Style)
      • Останов, Сообщение(Stop, Information) — можно ввести только разрешенные проверкой значения. Различается только вид сообщения(пример сообщения Останов приведен на рисунке выше).
      • Предупреждение(Warning) — в ячейку можно ввести любое значение, но при вводе значения, противоречащего проверке, появиться предупреждающее сообщение с подтверждением ввода данных.
    • Заголовок(Title) — текст, который будет показан в заголовке сообщения об ошибке. Если не указан, то в заголовке будет написано Microsoft Excel.
    • Сообщение(Error message) — непосредственно текст самого сообщения об ошибке. Если не указан, то будет показан текст примерно следующего содержания:
      Это значение не соответствует ограничениям по проверке данных, установленным для этой ячейки
      (This value doesn’t match the data validation restrictions defined for this cell)

    Как скопировать проверку данных на другие ячейки
    Все очень просто — копируем ячейку с нужной проверкой данных -выделяем ячейки для создания в них такого же условия -Правая кнопка мыши —Специальная вставка(Paste Special) -в окне выбираем Условия на значения(Validation)Ок:
    Распространить проверку данных


    Как удалить проверку данных из ячеек
    Выделяем необходимые ячейки -вкладка Данные(Data)Проверка данных(Data Validation). В поле Тип данных(Allow) устанавливаем Любое значение(Any Value)Ок.


    Маленькая хитрость использования проверки данных
    Если проверка данных на ячейки была установлена уже после того, как данные были внесены, то очень неплохо понять, все ли данные соответствуют условиям проверки. Сделать это несложно. После того, как ячейкам была назначена проверка данных переходим на вкладку Данные(Data)Проверка данных(Data Validation) -раскрываем меню и выбираем Обвести неверные данные(Circle Invalid Data). Все ячейки, данные в которых не соответствуют условиям проверки данных будут обведены красной линией:
    Найти ошибочные данные
    Это можно использовать не только когда необходима проверка данных, но и просто для определения ошибочных значений. Например, есть список товара на складе и есть лист, в который этот товар вносился сотрудниками вручную. Необходимо определить какие наименования товара не соответствуют тем, которые заведены на складе. Создаем проверку данных Список(Выпадающие списки), указывая в качестве источника список товара на складе. Далее распространяем эту проверку на ячейки с занесенными сотрудниками данными. И теперь применяем функцию Обвести неверные данные.

    Сразу после исправления неверных значений на те, которые есть в списке обводка исчезает. Если не все значения надо исправлять, а обводку тем не менее надо удалить, то после всех нужных правок просто переходим на вкладку Данные(Data)Проверка данных(Data Validation) -раскрываем меню и выбираем Удалить обводку неверных данных(Clear Validation Circles)


    Как обойти проверку данных или маленькая ложка дегтя
    Необходимо всегда помнить, что какое бы условие на проверку не было установлено — значение в ячейке можно удалить, нажав кнопку Del. Либо просто скопировать ячейку из другой книги или листа и вставить на место проверки данных — проверка исчезнет, т.к. вся ячейка будет заменена скопированной. И от этого никак не уйти — такой проверку сделали разработчики. И даже защита листа здесь не поможет, т.к. для работы проверки данных ячейка не должна быть защищена.


    Статья помогла? Поделись ссылкой с друзьями!

      Плейлист   Видеоуроки


    Поиск по меткам

    Access
    apple watch
    Multex
    Power Query и Power BI
    VBA управление кодами
    Бесплатные надстройки
    Дата и время
    Записки
    ИП
    Надстройки
    Печать
    Политика Конфиденциальности
    Почта
    Программы
    Работа с приложениями
    Разработка приложений
    Росстат
    Тренинги и вебинары
    Финансовые
    Форматирование
    Функции Excel
    акции MulTEx
    ссылки
    статистика

В этом учебном материале по Excel мы рассмотрим примеры того, как настроить проверку данных, где дата должна находиться между двумя датами.

Как в Excel настроить проверку данных, где дата должна находиться между двумя датами

Основная формула

Описание

Примечание. В Excel есть несколько встроенных правил проверки данных для дат. В этой статье объясняется, как создать собственное правило проверки на основе настраиваемой формулы, если вы хотите или нуждаетесь в большем контроле и гибкости.
Чтобы пользователь мог вводить даты только между двумя датами, вы можете использовать проверку данных с помощью настраиваемой формулы, основанной на функции И.
В показанном примере проверка данных, применяемая к диапазону C5:C9:

=И(C5>=ДАТА(2021;6;1);C5<=ДАТА(2021;6;30))

Пояснение

Правила проверки данных срабатывают, когда пользователь добавляет или изменяет значение ячейки.
Функция И принимает несколько аргументов (логических значений) и возвращает ИСТИНА только тогда, когда все аргументы возвращают ИСТИНА. Функция ДАТА создает правильную дату Excel с заданными значениями года, месяца и дня.
Поскольку мы хотим разрешить только даты в июне 2021 года, мы указываем И с двумя логическими значениями.
Первые логические тесты, входящие в C5, больше или равны 1 июня 2021 года:

Второй логический тест, входящий в C5, меньше или равен 30 июня 2021 года:

Если оба условия — ИСТИНА, функция И возвращает ИСТИНА, и ввод проходит проверку. Если любое из условий — ЛОЖЬ, то функция И возвращает ЛОЖЬ, и ввод не проходит проверку данных.
Примечание. Ссылки на ячейки в формулах проверки данных относятся к верхней левой ячейке в диапазоне, выбранном при определении правила проверки, в данном случае C5.
Проверка данных находится в панели Excel на вкладке Данные (рис. ниже).
Excel на вкладке Данные Проверка данных

Если ячейки содержат неправильный формат значений – это может привести к ошибочным вычислениям в формулах. Например, вместо типа значения «Дата», ячейка содержит тип значения «Текст». При подготовке больших объемов данных следует выполнить проверку всех типов значений на соответствие определенному формату. Например, таблица заполнялась данными из разных источников где в разный способ фиксировалась дата. С такой таблицей нельзя выполнять различных вычислений. Визуально сложно заметить где в неправильном формате введена неправильная дата с точки зрения программы Excel.

Поиск формата текста вместо даты в Excel

Чтобы быстро найти ошибочные значения в Excel и выделить цветом все ячейки с неправильным форматом, будем использовать условное форматирование. Для примера возьмем простую таблицу:

Таблица.

Поиск и выделение цветом ячеек с неправильным форматом отображения значений:

  1. Выделите диапазон ячеек A2:A8 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило».
  2. Создать правило.

  3. Выберите ниже: «Использовать формулу для определения форматируемых ячеек».
  4. ЕТЕКСТ.

  5. Чтобы найти дату в тексте Excel для поля ввода введите формулу: =ЕТЕКСТ(A2) и нажмите на кнопку «Формат», чтобы задать желаемый цвет заливки для ячеек. Например, зеленый. И нажмите ОК на всех открытых окнах.

Зеленая ячейка.

Как видно на рисунке все даты в формате текст выделились цветом:

Пример.

В условиях форматирования мы использовали простую функцию =ЕТЕКСТ(), у которой всего только 1 аргумент – ссылка на проверяемую ячейку. Арес ссылки в аргументе функции ЕТЕКСТ должен быть относительным, так как будет проверятся каждая ячейка выделенного диапазона. Если текущая проверяемая ячейка содержит текст (а не дату) – это неправильное значение Excel. Тогда функция ЕТЕКСТ возвращает значение ИСТИНА и к этой ячейке сразу же присваивается новый формат (зеленая заливка). Название функции ЕТЕКСТ следует читать как сокращение от двух слов: Если ТЕКСТ



Читаем логические функции, которыми можно проверить другие форматы и типы данных в ячейках таким же способом:

  • ЕНЕТЕКСТ – если не текст (функция так же позволяет быстро найти дату в тексте Excel);
  • ЕЧИСЛО – если число (позволяет быстро находить неправильный формат чисел в Excel);
  • ЕОШ – если ошибка;
  • ЕОШИБКА – если ошибка;
  • ЕСЛИОШИБКА – если ошибка (это не логическая функция, но ее легко оптимизировать под данную задачу);
  • ЕПУСТО – если пусто;
  • ЕЛОГИЧ – если логическое значение;
  • ЕНД – если недоступное значение (#Н/Д);
  • ЕНЕЧЁТ – если нечетное значение;
  • ЕЧЁТ – если четное значение;
  • ЕССЫЛКА – если ссылка;
  • ЕФОРМУЛА – если формула.

При желании можете проверить все функции в действии экспериментальным путем.

Понравилась статья? Поделить с друзьями:
  • Excel проверка на повтор в столбце
  • Excel проверить ячейку на формат
  • Excel проверка на ошибку значения
  • Excel проверить ячейку на ошибку
  • Excel проверка на непустую ячейку