Тестирование данных в excel

Время на прочтение
7 мин

Количество просмотров 14K

Проблема

Есть определенная функциональная область приложения: некая экспертная система, анализирующая состояние данных, и выдающая результат — множество рекомендаций на базе набора правил. Компоненты системы покрыты определенным набором юнит-тестов, но основная «магия» заключается в выполнении правил. Набор правил определен заказчиком на стадии проекта, конфигурация выполнена.
Более того, поскольку после первоначальной приемки (это было долго и сложно — потому, что “вручную») в правила экспертной системы регулярно вносятся изменения по требованию заказчика. При этом, очевидно, неплохо — бы проводить регрессионное тестирование системы, чтобы убедиться, что остальные правила все еще работают корректно и никаких побочных эффектов последние изменения не внесли.

Основная сложность заключается даже не в подготовке сценариев — они есть, а в их выполнении. При выполнении сценариев “вручную», примерно 99% времени и усилий уходит на подготовку тестовых данных в приложении. Время исполнения правил экспертной системой и последующего анализа выдаваемого результата — незначительно по сравнению с подготовительной частью. Сложность выполнения тестов, как известно, серьезный негативный фактор, порождающий недоверие со стороны заказчика, и влияющий на развитие системы («Изменишь что-то, а потом тестировать еще прийдется… Ну его…»).

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

Под катом будет рассказано об одном подходе, реализующим данную идею — с использованием MS Excel, XML и XSLT преобразований.

Тест — это прежде всего данные

А где проще всего готовить данные, особенно неподготовленному пользователю? В таблицах. Значит, прежде всего — в MS Excel.

Я, лично, электронные таблицы очень не люблю. Но не как таковые (как правило — это эталон юзабилити), а за то, что они насаждают и культивируют в головах непрофессиональных пользователей концепцию «смешивания данных и представления» (и вот уже программисты должны выковыривать данные из бесконечных многоуровневых «простыней», где значение имеет все — и цвет ячейки и шрифт). Но в данном случае — мы о проблеме знаем, и постараемся ее устранить.

Итак, постановка задачи

  • обеспечить подготовку данных в MS Excel. Формат должен быть разумным с точки зрения удобства подготовки данных, простым для дальнейшей обработки, доступным для передачи бизнес пользователям (последнее — это факультативно, для начала — сделаем инструмент для себя);
  • принять подготовленные данные и преобразовать их в код теста.

Решение

Пара дополнительных вводных:

  • Конкретный формат представления данных в Excel пока не ясен и, видимо, будет немного меняться в поисках оптимального представления;
  • Код тестового скрипта может со временем меняться (отладка, исправление дефектов, оптимизация).

Оба пункта приводят к мысли, что исходные данные для теста необходимо предельно оделить и от формата, в котором будет осуществляться ввод, и от процесса обработки и превращения в код автотеста, поскольку обе стороны будут меняться.

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

Итак, архитектура решения:

  1. Преобразовать данные из Excel в XML определённого формата
  2. Преобразовать XML с помощью XSLT в финальный код тестового скрипта на произвольном языке программирования

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

Этап 1. Ведение данных в Excel

Здесь, честно говоря, я ограничился ведением данных в виде табличных блоков. Фрагмент файла — на картинке.

image

  1. Блок начинается со строки, содержащей название блока (ячейка “A5″). Оно будет использовано в качестве имени xml-элемента, так что содержание должно соответствовать требованиям. В той же строе может присутствовать необязательный “тип” (ячейка “B5″) — он будет использовано в качестве значения атрибута, так что тоже имеет ограничения.
  2. Каждая колонка таблицы содержит помимо “официального” названия, представляющего бизнес-термины (строка 8), еще два поля для “типа” (строка 6) и “технического названия” (строка 7). В процессе подготовки данных технические поля можно скрывать, но во время генерации кода использоваться будут именно они.
  3. Колонок в таблице может быть сколько угодно. Скрипт завершает обработку колонок как только встретит колонку с пустым значением “тип” (колонка D).
  4. Колонки со “типом”, начинающимся с нижнего подчеркивания — пропускаются.
  5. Таблица обрабатывается до тех пор, пока не встретиться строка с пустым значением в первой колонке (ячейка “A11”)
  6. Скрипт останавливается после 3 пустых строк.

Этап 2. Excel -> XML

Преобразование данных с листов Excel в XML — несложная задача. Преобразование производится с помощью кода на VBA. Тут могут быть варианты, но мне так показалось проще и быстрее всего.

Ниже приведу лишь несколько соображений — как сделать финальный инструмент удобнее в поддержке и использовании.

  1. Код представлен в виде Excel add-in (.xlam) — для упрощения поддержки кода, когда количество файлов с тестовыми данными более 1 и эти файлы создаются/поддерживаются более чем одним человеком. Кроме того — это соответствует подходу разделения кода и данных;
  2. XSLT шаблоны размещаются в одном каталоге с файлом add-in — для упрощения поддержки;
  3. Генерируемые файлы: промежуточный XML и результирующий файл с кодом, — желательно помещать в тот же каталог, что и файл Excel с исходными данными. Людям создающим тестовые скрипты будет удобнее и быстрее работать с результатами;
  4. Excel файл может содержать несколько листов с данными для тестов — они используются для организации вариативности данных для теста (например, если тестируется процесс, в котором необходимо проверить реакцию системы на каждом шаге): откопировал лист, поменял часть входных данных и ожидаемых результатов — готово. Все в одном файле;
  5. Поскольку все листы в рабочей книге Excel должны иметь уникальное имя — эту уникальность можно использовать в качестве части имени тестового скрипта. Такой подход дает гарантированную уникальность имен различных подсценариев в рамках сценария. А если включать в имя тестового скрипта название файла, то достичь уникальности названий скриптов становится еще проще — что особенно важно в случае если тестовые данные готовят несколько человек независимо. Кроме того, стандартный подход к именованию поможет в дальнейшем при анализе результатов теста — от результатов исполнения к исходным данным будет добраться очень просто;
  6. Данные из всех листов книги сохраняются в один XML файл. Для нас это показалось целесообразным в случае генерации тестовой документации, и некоторых случаях генерации тестовых сценариев;
  7. При генерации файла с данными для теста удобно оказалось иметь возможность не включать в генерацию отдельные листы с исходными данными (по разным причинам; например, данные для одного из пяти сценариев ещё не готовы — а тесты прогонять пора). Для этого мы используем соглашение: листы, где название начинается с символа нижнего подчёркивания — исключаются из генерации;
  8. В файле удобно держать лист с деталями сценария по которому создаются тестовые данные («Documentation») — туда можно копировать информацию от заказчика, вносить комментарии, держать базовые данные и константы, на которые ссылаются остальные листы с данными, и так далее. Разумеется, данный лист в генерации не участвует;
  9. Чтобы иметь возможность влиять на некоторые аспекты генерации финального кода тестовых скриптов, оказалось удобным включать в финальный XML дополнительную информацию «опции генерации», которые не являются тестовыми данными, но могут использоваться шаблоном для включения или исключения участков кода (по аналогии с pragma, define, итп.) Для этого мы используем именованные ячейки, размещённые на негенерируемом листе «Options»;
  10. Каждая строка тестовых данных должна иметь уникальный идентификатор на уровне XML — это здорово поможет при генерации кода и при обработке кросс-ссылок между строками тестовых данных, которые при этом необходимо формулировать в терминах как раз этих уникальных идентификаторов.

Фрагмент XML который получается из данных в Excel с картинки выше

<MasterRecord type="Type1">
<columns>
<column>
<type>Field</type>
<name>TechName1</name>
<caption>Business Name 1</caption>
</column>
<column>
<type>Field</type>
<name>TechName2</name>
<caption>Business Name 2</caption>
</column>
<column>
<type>Field</type>
<name>TechName3</name>
<caption>Business Name 3</caption>
</column>
</columns>
<row id="Type1_1">
<Field name="TechName1">A</Field>
<Field name="TechName2">123</Field>
<Field name="TechName3">2016-01-01</Field>
</row>
<row id="Type1_2">
<Field name="TechName1">B</Field>
<Field name="TechName2">456</Field>
<Field name="TechName3">2016-01-01</Field>
</row>
</MasterRecord>

Этап 3. XML -> Code

Эта часть предельно специфична задачам которые решаются, поэтому ограничусь общими замечаниями.

  1. Начальная итерация начинается по элементам, представляющим листы (различные тестовые сценарии). Здесь можно размещать блоки setup / teardown, утилит;
  2. Итерация по элементам данных внутри элемента сценария должна начинаться с элементов ожидаемых результатов. Так можно логично организовать сгенерированные тесты по принципу «один тест — одна проверка»;
  3. Желательно явно разделить на уровне шаблонов области, где генерируются данные, выполняется проверяемое действие, и контролируется полученный результат. Это возможно путём использования шаблонов с режимами (mode). Такая структура шаблона позволит в дальнейшем делать другие варианты генерации — просто импортируя этот шаблон и перекрывая в новом шаблоне необходимую область;
  4. Наряду с кодом, в тот же файл будет удобно включить справку по запуску тестов;
  5. Очень удобным является выделение кода генерации данных в отдельно вызываемый блок (процедуру) — так чтобы его можно было использовать как в рамках теста, так и независимо, для отладки или просто создания набора тестовых данных.

Финальный комментарий

Через какое-то время файлов с тестовыми данными станет много, а отладка и «полировка» шаблонов генерации тестовых скриптов будет все продолжаться. Поэтому, прийдется предусмотреть возможность «массовой» генерации автотестов из набора исходных Excel файлов.

Заключение

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

В нашем проекте удалось довольно быстро создать набор тестовых сценариев для интеграционного тестирования сложной функциональной области — всего на данный момент около 60 файлов, генерируемых примерно в 180 тестовых классов tSQLt (фреймворк для тестирования логики на стороне MS SQL Server). В планах — использовать подход для расширения тестирования этой и других функциональных областей проекта.

Формат пользовательского ввода остается как и раньше, а генерация финальных автотестов можно менять по потребностям.

Код VBA для преобразования Excel файлов в XML и запуска преобразования (вместе с примером Excel и XML) можно взять на GitHub github.com/serhit/TestDataGenerator.

Преобразование XSLT не включено в репозиторий, поскольку оно генерит код для конкретной задачи — у вас все равно будет свой. Буду рад комментариям и pull request’ам.

Happy testing!

Содержание

  • Реализация тестирования
    • Способ 1: поле для ввода
    • Способ 2: выпадающий список
    • Способ 3: использование элементов управления
  • Вопросы и ответы

Тест в Microsoft Excel

Часто для проверки качества знаний прибегают к использованию тестов. Их применяют также для психологического и других видов тестирования. На ПК с целью написания тестов довольно часто применяют различные специализированные приложения. Но с поставленной задачей может справиться даже обычная программа Microsoft Excel, которая имеется на компьютерах почти всех пользователей. Используя инструментарий данного приложения можно написать тест, который по функциональности мало чем будет уступать решениям, выполненным с помощью специализированного ПО. Давайте разберемся, как при помощи Экселя выполнить данную задачу.

Реализация тестирования

Любой тест подразумевает выбор одного из нескольких вариантов ответа на поставленный вопрос. Как правило, их несколько. Желательно, чтобы после завершения теста пользователь уже видел сам, справился ли он с тестированием или нет. Выполнить эту задачу в Экселе можно несколькими путями. Давайте опишем алгоритм различных способов, как это сделать.

Способ 1: поле для ввода

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

  1. Записываем сам вопрос. Давайте в этом качестве для простоты будем использовать математические выражения, а в качестве ответов – пронумерованные варианты их решения.
  2. Вопрос и варианты ответов в Microsoft Excel

  3. Отдельную ячейку выделяем для того, чтобы пользователь мог вписывать туда номер того ответа, который он считает верным. Для наглядности помечаем её желтым цветом.
  4. Ячейка для ответа в Microsoft Excel

  5. Теперь перемещаемся на второй лист документа. Именно на нем будут располагаться правильные ответы, с которыми программа сверит данные пользователем. В одной ячейке пишем выражение «Вопрос 1», а в соседнюю вставляем функцию ЕСЛИ, которая, собственно, и будет контролировать правильность действий пользователя. Для вызова этой функции выделяем целевую ячейку и жмем на значок «Вставить функцию», размещенный около строки формул.
  6. Переход в Мастер функций в Microsoft Excel

  7. Запускается стандартное окно Мастера функций. Переходим в категорию «Логические» и ищем там наименование «ЕСЛИ». Поиски не должны быть долгими, так как это название размещено первым в перечне логических операторов. После этого выделяем данную функцию и жмем на кнопку «OK».
  8. Переход в окно аргументов функции ЕСЛИ в Microsoft Excel

  9. Производится активация окна аргументов оператора ЕСЛИ. Указанный оператор имеет три поля, соответствующих числу его аргументов. Синтаксис данной функции принимает следующий вид:

    =ЕСЛИ(Лог_выражение;Значение_если_истина;Значение_если_ложь)

    В поле «Логическое выражение» нужно вписать координаты той ячейки, в которую пользователь заносит ответ. Кроме того, в этом же поле нужно указать правильный вариант. Для того, чтобы внести координаты целевой ячейки, устанавливаем курсор в поле. Далее возвращаемся на Лист 1 и отмечаем элемент, который мы предназначили для написания номера варианта. Его координаты тут же отобразятся в поле окна аргументов. Далее, чтобы указать правильный ответ в этом же поле после адреса ячейки вписываем выражение без кавычек «=3». Теперь, если пользователь в целевой элемент поставит цифру «3», то ответ будет считаться верным, а во всех остальных случаях – неверным.

    В поле «Значение если истина» устанавливаем число «1», а в поле «Значение если ложь» устанавливаем число «0». Теперь, если пользователь выберет правильный вариант, то он получит 1 балл, а если неправильный – то 0 баллов. Для того, чтобы сохранить введенные данные, жмем на кнопку «OK» в нижней части окна аргументов.

  10. Окно аргументов функции ЕСЛИ в Microsoft Excel

  11. Аналогичным образом составляем ещё два задания (или любое нужное нам количество) на видимом для пользователя листе.
  12. Два новых вопроса в Microsoft Excel

  13. На Листе 2 с помощью функции ЕСЛИ обозначаем правильные варианты, как мы это делали в предыдущем случае.
  14. Заполнение столбца Результат формулами в Microsoft Excel

  15. Теперь организуем подсчет баллов. Его можно сделать с помощью простой автосуммы. Для этого выделяем все элементы, где содержится формула ЕСЛИ и жмем на значок автосуммы, который расположен на ленте во вкладке «Главная» в блоке «Редактирование».
  16. Включение автосуммы в Microsoft Excel

  17. Как видим, пока сумма равна нулю баллов, так как мы не ответили ни на один пункт тестирования. Наибольшее количество баллов, которые в данном случае может набрать пользователь – 3, если он правильно ответит на все вопросы.
  18. Количество баллов в Microsoft Excel

    Lumpics.ru

  19. При желании можно сделать так, что количество набранных баллов будет выводиться и на пользовательский лист. То есть, пользователь будет сразу видеть, как он справился с задачей. Для этого, выделяем отдельную ячейку на Листе 1, которую называем «Результат» (или другим удобным наименованием). Чтобы долго не ломать голову, просто ставим в неё выражение «=Лист2!», после чего вписываем адрес того элемента на Листе 2, в котором находится автосумма баллов.
  20. Ячейка для вывода результата в Microsoft Excel

  21. Проверим, как работает наш тест, намеренно допустив одну ошибку. Как видим, результат данного теста 2 балла, что соответствует одной допущенной ошибке. Тест работает корректно.

Результат теста в Microsoft Excel

Урок: Функция ЕСЛИ в Экселе

Способ 2: выпадающий список

Организовать тест в Экселе можно также при помощи выпадающего списка. Посмотрим, как это выполнить на практике.

  1. Создаем таблицу. В левой её части будут задания, в центральной части – ответы, которые пользователь должен выбрать из предложенного разработчиком выпадающего списка. В правой части будет отображаться результат, который автоматически генерируется в соответствии с правильностью выбранных ответов пользователем. Итак, для начала построим каркас таблицы и введем вопросы. Применим те же задания, которые использовали в предыдущем способе.
  2. Таблица в Microsoft Excel

  3. Теперь нам предстоит создать список с доступными ответами. Для этого выделяем первый элемент в столбце «Ответ». После этого переходим ко вкладке «Данные». Далее выполняем щелчок по значку «Проверка данных», который размещен в блоке инструментов «Работа с данными».
  4. Переход к проверке данных в Microsoft Excel

  5. После выполнения данных шагов активируется окно проверки видимых значений. Перемещаемся во вкладку «Параметры», если оно было запущено в какой-либо другой вкладке. Далее в поле «Тип данных» из выпадающего списка выбираем значение «Список». В поле «Источник» через точку с запятой нужно записать варианты решений, которые будут отображаться для выбора в нашем выпадающем списке. Затем щелкаем по кнопке «OK» в нижней части активного окна.
  6. Окно проверки вводимых значений в Microsoft Excel

  7. После этих действий справа от ячейки с вводимыми значениями появится пиктограмма в виде треугольника с углом, направленным вниз. При клике по ней будет открываться список с введенными нами ранее вариантами, один из которых следует выбрать.
  8. Варианты ответов в Microsoft Excel

  9. Аналогичным образом составляем списки и для других ячеек столбца «Ответ».
  10. Список ответов для других ячеек в Microsoft Excel

  11. Теперь нам предстоит сделать так, чтобы в соответствующих ячейках столбца «Результат» отображался факт того, верным является ответ на задание или нет. Как и в предыдущем способе сделать это можно при помощи оператора ЕСЛИ. Выделяем первую ячейку столбца «Результат» и вызываем Мастер функций посредством нажатия на значок «Вставить функцию».
  12. Вставить функцию в Microsoft Excel

  13. Далее через Мастер функций при помощи того же варианта, который был описан в предыдущем способе, переходим к окну аргументов функции ЕСЛИ. Перед нами открывается то же окно, которое мы видели в предыдущем случае. В поле «Логическое выражение» указываем адрес ячейки, в которой выбираем ответ. Далее ставим знак «=» и записываем верный вариант решения. В нашем случае это будет число 113. В поле «Значение если истина» устанавливаем количество баллов, которое мы хотим, чтобы начислялось пользователю при правильном решении. Пусть это, как и в предыдущем случае, будет число «1». В поле «Значение если ложь» устанавливаем количество баллов. В случае неверного решения пусть оно будет равно нулю. После того, как вышеуказанные манипуляции выполнены, жмем на кнопку «OK».
  14. Окно аргументов функции ЕСЛИ в программе Microsoft Excel

  15. Аналогичным образом внедряем функцию ЕСЛИ в остальные ячейки столбца «Результат». Естественно, что в каждом случае в поле «Логическое выражение» будет собственный вариант правильного решения, соответствующий вопросу в данной строке.
  16. После этого делаем итоговую строку, в которой будет подбиваться сумма баллов. Выделяем все ячейки столбца «Результат» и щелкаем уже знакомый нам значок автосуммы во вкладке «Главная».
  17. Создание автосуммы в Microsoft Excel

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

Ошибка при ответе на вопрос в Microsoft Excel

Способ 3: использование элементов управления

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

  1. Для того чтобы иметь возможность использовать формы элементов управления, прежде всего, следует включить вкладку «Разработчик». По умолчанию она отключена. Поэтому, если в вашей версии Excel она ещё не активирована, то следует провести некоторые манипуляции. Прежде всего, перемещаемся во вкладку «Файл». Там выполняем переход в раздел «Параметры».
  2. Переход в раздел параметров в Microsoft Excel

  3. Активируется окно параметров. В нём следует переместиться в раздел «Настройка ленты». Далее в правой части окна устанавливаем флажок около позиции «Разработчик». Для того чтобы изменения вступили в силу жмем на кнопку «OK» в нижней части окна. После этих действий вкладка «Разработчик» появится на ленте.
  4. Включение вкладки Разработчик в Microsoft Excel

  5. Прежде всего, вписываем задание. При использовании данного способа каждое из них будет размещено на отдельном листе.
  6. Вопрос в Microsoft Excel

  7. После этого переходим в недавно активированную нами вкладку «Разработчик». Щелкаем по значку «Вставить», который размещен в блоке инструментов «Элементы управления». В группе значков «Элементы управления формы» выбираем объект под названием «Переключатель». Он имеет вид круглой кнопки.
  8. Выбор переключателя в Microsoft Excel

  9. Кликаем по тому месту документа, где желаем разместить ответы. Именно там появится нужный нам элемент управления.
  10. Элемент управления в Microsoft Excel

  11. Затем вписываем один из вариантов решения вместо стандартного наименования кнопки.
  12. Наименование изменено в Microsoft Excel

  13. После этого выделяем объект и кликаем по нему правой кнопкой мыши. Из доступных вариантов действий выбираем пункт «Копировать».
  14. Копирование в Microsoft Excel

  15. Выделяем расположенные ниже ячейки. Затем кликаем правой кнопкой мыши по выделению. В появившемся списке выбираем позицию «Вставить».
  16. Вставка в Microsoft Excel

  17. Далее производим вставку ещё два раза, так как мы решили, что вариантов решения будет четыре, хотя в каждом конкретном случае их число может отличаться.
  18. Переключатели скопированы в Microsoft Excel

  19. Затем переименовываем каждый вариант, чтобы они не совпадали друг с другом. Но не забываем и о том, что один из вариантов обязательно должен быть верным.
  20. Кнопки переименованы в Microsoft Excel

  21. Далее оформляем объект для перехода к следующему заданию, а в нашем случае это означает переход к следующему листу. Опять жмем на значок «Вставить», расположенный во вкладке «Разработчик». На этот раз переходим к выбору объектов в группе «Элементы ActiveX». Выбираем объект «Кнопка», который имеет вид прямоугольника.
  22. Выбор кнопки ActiveX в Microsoft Excel

  23. Кликаем по области документа, которая расположена ниже введенных ранее данных. После этого на ней отобразится нужный нам объект.
  24. Вствка кнопки в Microsoft Excel

  25. Теперь нам нужно поменять некоторые свойства образовавшейся кнопки. Кликаем по ней правой кнопки мыши и в открывшемся меню выбираем позицию «Свойства».
  26. Переход к свойствам кнопки в Microsoft Excel

  27. Открывается окно свойств элемента управления. В поле «Name» меняем название на то, которое будет более актуальным для этого объекта, в нашем примере это будет наименование «Следующий_вопрос». Заметьте, что в данном поле не допускается наличие пробелов. В поле «Caption» вписываем значение «Следующий вопрос». Тут уже пробелы допускаются, и именно это наименование будет отображаться на нашей кнопке. В поле «BackColor» выбираем цвет, который будет иметь объект. После этого можно закрывать окно свойств, нажав на стандартный значок закрытия в его верхнем правом углу.
  28. Окно свойств в Microsoft Excel

  29. Теперь кликаем правой кнопкой мыши по наименованию текущего листа. В открывшемся меню выбираем пункт «Переименовать».
  30. Переименование листа в Microsoft Excel

  31. После этого наименование листа становится активным, и мы вписываем туда новое название «Вопрос 1».
  32. Лист переименован в Microsoft Excel

  33. Опять кликаем по нему правой кнопкой мыши, но теперь в меню останавливаем выбор на пункте «Переместить или скопировать…».
  34. Переход к копированию листа в Microsoft Excel

  35. Запускается окно создания копии. Устанавливаем в нем галочку около пункта «Создать копию» и жмем на кнопку «OK».
  36. Создание копии в Microsoft Excel

  37. После этого изменяем название листа на «Вопрос 2» тем же способом, как это делали ранее. Данный лист пока содержит полностью идентичное содержимое, что и предыдущий лист.
  38. Лист Вопрос 2 в Microsoft Excel

  39. Меняем номер задания, текст, а также ответы на этом листе на те, которые считаем нужными.
  40. Изменение вопросов и ответов в Microsoft Excel

  41. Аналогичным образом создаем и изменяем содержимое листа «Вопрос 3». Только в нем, так как это последнее задание, вместо наименования кнопки «Следующий вопрос» можно поставить название «Завершить тестирование». Как сделать это уже обсуждалось ранее.
  42. Вкладка Вопрос 3 в Microsoft Excel

  43. Теперь возвращаемся на вкладку «Вопрос 1». Нам нужно привязать переключатель к определенной ячейке. Для этого щелкаем правой кнопкой мыши по любому из переключателей. В открывшемся меню выбираем пункт «Формат объекта…».
  44. Переход к формату объекта в Microsoft Excel

  45. Активируется окно формата элемента управления. Перемещаемся во вкладку «Элемент управления». В поле «Связь с ячейкой» устанавливаем адрес любого пустого объекта. В него будет выводиться число в соответствии с тем, какой именно по счету переключатель будет активен.
  46. Окно формата элемента управления в Microsoft Excel

  47. Аналогичную процедуру проделываем и на листах с другими заданиями. Для удобства желательно, чтобы связанная ячейка находилась в одном и том же месте, но на разных листах. После этого опять возвращаемся на лист «Вопрос 1». Кликаем правой кнопкой мыши по элементу «Следующий вопрос». В меню выбираем позицию «Исходный текст».
  48. Переход к исходному тексту в Microsoft Excel

  49. Открывается редактор команд. Между командами «Private Sub» и «End Sub» нам следует написать код перехода на следующую вкладку. В указанном случае он будет выглядеть так:

    Worksheets("Вопрос 2").Activate

    После этого закрываем окно редактора.

  50. Редактор команд в Microsoft Excel

  51. Аналогичную манипуляцию с соответствующей кнопкой делаем на листе «Вопрос 2». Только там вписываем следующую команду:

    Worksheets("Вопрос 3").Activate

  52. Код на листе Вопрос 2 в Microsoft Excel

  53. В редакторе команд кнопки листа «Вопрос 3» производим следующую запись:

    Worksheets("Результат").Activate

  54. Код на листе Вопрос 3 в Microsoft Excel

  55. После этого создаем новый лист под названием «Результат». На нем будет отображаться результат прохождения теста. Для этих целей создаем таблицу из четырёх колонок: «Номер вопроса», «Правильный ответ», «Введенный ответ» и «Результат». В первый столбец вписываем по порядку номера заданий «1», «2» и «3». Во втором столбце напротив каждого задания вписываем номер положения переключателя, соответствующий правильному решению.
  56. Вкладка Результат в Microsoft Excel

  57. В первой ячейке в поле «Введенный ответ» ставим знак «=» и указываем ссылку на ту ячейку, которую мы связали с переключателем на листе «Вопрос 1». Аналогичные манипуляции проводим с ячейками ниже, только для них указываем ссылки на соответствующие ячейки на листах «Вопрос 2» и «Вопрос 3».
  58. Введенные ответы в Microsoft Excel

  59. После этого выделяем первый элемент столбца «Результат» и вызываем окно аргументов функции ЕСЛИ тем же способом, о котором мы говорили выше. В поле «Логическое выражение» указываем адрес ячейки «Введенный ответ» соответствующей строки. Затем ставим знак «=» и после этого указываем координаты элемента в столбце «Правильный ответ» той же строки. В полях «Значение если истина» и «Значение если ложь» вводим числа «1» и «0» соответственно. После этого жмем на кнопку «OK».
  60. Окно аргументов функции ЕСЛИ для вкладки Результат в Microsoft Excel

  61. Для того, чтобы скопировать данную формулу на диапазон ниже, ставим курсор в правый нижний угол элемента, в котором располагается функция. При этом появляется маркер заполнения в виде крестика. Жмем на левую кнопку мыши и тянем маркер вниз до конца таблицы.
  62. Маркер заполнения в Microsoft Excel

  63. После этого для подведения общего итога применяем автосумму, как это уже делали не один раз.

Применение автосуммы в Microsoft Excel

На этом создание теста можно считать завершенным. Он полностью готов к прохождению.

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

Еще статьи по данной теме:

Помогла ли Вам статья?

Ошибки пользователей при вводе данных – одна из самых распространенных проблем в ExcelВ результате ошибочных данных ячейки с формулами на разных листах друг за другом могут заполниться ошибками #ЗНАЧ, #H/Д и т.п. Поиск ошибок может занимать длительное время, потому что непонятен первоначальный источник ошибки. С чего начинать?  Но появление ячеек с ошибками это даже хорошо. 

Гораздо хуже, когда внешне все выглядит нормально, но при этом в данных есть ошибки. В таких случаях пользователь даже не догадываться о наличии ошибок и формирует недостоверные отчеты. А в результате принимаются ошибочные управленческие решения. Что же делать?

НЕДОСТАТКИ СТАНДАРТНЫХ ИНСТРУМЕНТОВ EXCEL

Как вы наверняка знаете, в Excel существует стандартный функционал для контроля вводимых в ячейки данных. Он устанавливается через меню Данные -> Проверка данных. В результате появляется диалоговое окно Проверка вводимых значений c тремя закладками.

На закладке Параметры в поле Тип данных можно выбрать тип данных. В зависимости от введенного типа становятся доступными для заполнения другие поля, например: 

  • для типа Число, Дата, Время можно задать границы – от и до и проверять на соблюдение условий между, меньше, больше и т.д.;
  • для типа Список можно задать список доступных значений;
  • для типа Другой можно задать свою собственную формулу, которая будет проверять вводимое значение на соблюдение каких либо условий, в том числе в зависимости от значений в других ячейках. 

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

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

1. Стандартные средства контроля введенных данных могут создать у пользователя вредную иллюзию защищенности от ошибок. Особенно если данные вводили не вы, а кто-то другой, и вы рассчитываете что там все нормально, система отловила ошибки. Ведь проверка работает только при ручном вводе данных, но не работает при внесении данных другими способами! 

Например, если данные вводятся в ячейку с использованием команд Копировать->Вставить, Копировать->Специальная вставка-Значения или путем «растаскивания» от соседних ячеек, то проверка данных не осуществляется. Также значения в ячейках не контролируются, если они введены в ячейку с помощью макроса (если только контроль не осуществляется в самом макросе).

Таким образом, неверные данные могут попасть в ячейки, многократно тиражированы и Excel это не отследит! 

Часто это бывает, когда вы выгружаете данные в таблицы из других программ, например, 1С. Но особенно неприятно когда ошибки незаметны или малозаметны. Например:

  • Значение в ячейке выглядит как число и дата, а на самом деле оно является текстом. Например потому, что перед или после цифр есть пробел или другие непечатные (невидимые) символы.
  • Ячейка выглядит пустой, а на самом деле там есть непечатные символы.
  • В качестве разделителя целой и дробной части использована точка вместо запятой.
  • Введено значение, которое отсутствует в «привязанном» к ячейке выпадающем списке.

Последняя ситуация достаточно распространена. Например, вы ведете реестр платежей от контрагентов, и вводите наименование контрагентов с помощью выпадающего списка, связанного со справочником контрагентов. Спустя некоторое время вы обнаруживаете в наименовании контрагента ошибку и исправляете ее в справочнике. При этом Excel никак не отреагирует на то, что в реестре есть записи со старым (ошибочным) наименованием контрагента. То есть Excel при изменении элементов списка не отлавливает уже введенные данные типа «Список». 

2. Стандартные способы проверки могут «тормозить»

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

В этом случае часто используются «тяжелые» функции СЧЕТЕСЛИ, СЧЕТЕСЛИМН, которые подсчитывают количество или сумму по уже введенным ранее данным и сравнивают, не превысит ли вводимое значение какой-то предел.
Всякий раз, когда вы вводите или изменяете значение в ячейке, отрабатывает эта «тяжелая» формула. Если при этом с ячейкой связано много других ячеек, будут пересчитываться и они. Когда вы это делаете и тестируете в таблицах мало данных и задержек не ощущается.

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

 3. Бесполезный инструмент «Обвести неверные данные»

Для проверки правильности введенных значений в Excel есть встроенный инструмент «Обвести неверные данные», который вызывается через пункты меню — Данные -> Проверка данных -> Обвести неверные данные.

Команда доступна только на незащищенном листе, а результатом ее работы будет обведение неверных по мнению Excel данных красным овалом как на рисунке выше. 

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

  • Будут признаны ошибочными и обведены пустые ячейки с типом «Список допустимых значение», если для них при настройке была снята галочка в поле «игнорировать пустые ячейки» (она снята в большинстве случаев). Но согласитесь — неверные значения и пустые значения это разные вещи. 
  • Помечаются только первые 255 недопустимых значения.
    Если в вашей таблице десятки колонок и тысячи строк, то придется много раз повторять одни и те же действия – исправлять ошибки и снова запускать обводку неверных данных. 
  • Она не всегда работает корректно. На вышеприведенном рисунке не были обведены значения в колонке ЦУ  — Объект «Сколково» — хотя эти значения ошибочные, т.к. их нет в списке. 

4. «Подсвечивание» ячеек с ошибочными данными

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

Я считаю это способ неэффективным. Ну  «подсветили» вы некорректные данные в таблице, а что дальше? 

Если таблице тысячи строк, то либо придется прокручивать всю таблицу в поисках подсвеченных ячеек, либо применять автофильтр по цвету. Причем поочередно делать для каждого столбца, так как непонятно – есть там неверные данные или нет. 

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

Мало того, что из-за правил условного форматирования Excel будет «тормозить», так пользователи еще и усложняют систему совсем необязательными макросами. 

КАК ПРАВИЛЬНО ОРГАНИЗОВАТЬ ПРОВЕРКУ ВВЕДЕННЫХ ДАННЫХ

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

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

Любую проверку вводимых значений можно делать и обычными функциями Excel, такими как ЕСЛИ, ЕТЕКСТ, ЕНЕТЕКСТ, ЕЧИСЛО, ПОИСКПОЗ. Поэтому в таблице можно создать служебную колонку  в ячейках которой задать формулу, которая будет проверять корректность введенных данных по заданным условиям во всех ячейках строки, предназначенных для ввода и сообщать об этом пользователю. Расчет формулы сделать включаемым/ выключаемым в зависимости от положения «тумблера». Что такое тумблеры и зачем они, написано здесь.

Это не предотвратит некорректный ввод данных, но предупредит об этом пользователя.
Зато формула будет отрабатывать не при ручном вводе данных, а по вашему требованию. 
Таким образом, пользователь может свободно вводить данные и Excel не будет «тормозить». Перед формированием управленческих отчетов пользователь запускает проверку, выявляет все ошибки и исправляет их. 

Как это устроено проще всего понять это на примере (см. рисунок ниже) 

1. В шапке таблицы создается служебная строка, каждая ячейка которой содержит формулу =Столбец (). Теперь у пользователя всегда перед глазами есть порядковые номера столбцов. Причем, что бы вы ни сделали со столбцами (вставка, удаление, перемещение) нумерация всегда будет сохраняться. 

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

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

Блоки могут быть такие:

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

ЕСЛИ(ЕТЕКСТ(проверяемое_значение);номер_столбца&».»;»») 

  • Ячейки, в которых значение вводится из выпадающего списка проверяется такой конструкцией: 

EСЛИ(ЕСЛИОШИБКА(ПОИСКПОЗ(искомое_значение; просматриваемый_массив;0);-1)>0;””;номер_столбца) 

  • Если вам нужно проверять даты на вхождение в определенный период времени используйте обычные функции ЕСЛИ, >=,<= и т.д. Аналогично для чисел. 

Не забудьте всю эту конструкцию поместить внутрь функции ЕСЛИ:     =ЕСЛИ(НаТ1;ваша_цепочка_блоков;””), где НаТ1 это имя ячейки-тумблера, которая включает/выключает расчет формулы.  Это позволит не вычислять формулу при всяком изменении в ячейках, а делать это по необходимости. 

В результате в служебной колонке, в тех строках, где будут обнаружены ошибки, отобразятся номера колонок с некорректными данными, разделенные точками. В шапке таблицы можно подсчитать количество строк с ошибками следующей формулой:
=ЧСТРОК(A$5:A$677)-СЧЁТЕСЛИ(A$5:A$677;»») , где A$5:A$677 – диапазон служебного столбца в котором выводятся признаки ошибок. 

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

Ваша программа будет еще удобнее если вы соберете данные о количестве ошибок на одном листе (в моих решениях это лист Настройки как на рисунке ниже) и там же разместите кнопку для запуска формул проверки ошибок. В этом случае вам не нужно метаться между листами рабочей книги. Достаточно нажать одну кнопку – макрос включит «тумблер» — все листы будут проверены на наличие ошибок, данные о количестве ошибок будут выведены в таблице. Если ошибок не обнаружено ячейка останется пустой. Если ошибки обнаружены вам нужно перейти на соответствующий лист и исправить их.

Все просто и удобно, никаких «тормозов» и экономия времени!

Cookie-файлы

Настройка cookie-файлов

Детальная информация о целях обработки данных и поставщиках, которые мы используем на наших сайтах

Аналитические Cookie-файлы
Отключить все

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


Подробнее


Понятно

  • Редакция Кодкампа

17 авг. 2022 г.
читать 2 мин


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

Один из самых простых способов проверить это предположение — выполнить тест Харке-Бера , который представляет собой тест согласия, который определяет, имеют ли выборочные данные асимметрию и эксцесс, соответствующие нормальному распределению.

В этом тесте используются следующие гипотезы:

H 0 : Данные нормально распределены.

H A : Данные не распределены нормально.

Тестовая статистика JB определяется как:

JB = (n/6) * (S 2 + (C 2 /4))

куда:

  • n: количество наблюдений в выборке
  • S: асимметрия выборки
  • C: образец эксцесса

При нулевой гипотезе нормальности JB ~ X 2 (2).

Если значение p , соответствующее тестовой статистике, меньше некоторого уровня значимости (например, α = 0,05), то мы можем отклонить нулевую гипотезу и сделать вывод, что данные не распределены нормально.

В этом руководстве представлен пошаговый пример того, как выполнить тест Харке-Бера для заданного набора данных в Excel.

Шаг 1: Создайте данные

Во-первых, давайте создадим поддельный набор данных с 15 значениями:

Шаг 2: Рассчитайте тестовую статистику

Затем рассчитайте статистику теста JB. В столбце E показаны используемые формулы:

Тестовая статистика оказывается 1,0175 .

Шаг 3: Рассчитайте P-значение

При нулевой гипотезе нормальности тестовая статистика JB следует распределению хи-квадрат с 2 степенями свободы.

Итак, чтобы найти p-значение для теста, мы будем использовать следующую функцию в Excel: =CHISQ.DIST.RT(статистика теста JB, 2)

Проверка нормальности в Excel

Значение p теста составляет 0,601244.Поскольку это p-значение не меньше 0,05, мы не можем отвергнуть нулевую гипотезу. У нас нет достаточных доказательств того, что набор данных не имеет нормального распределения.

Другими словами, мы можем предположить, что данные распределены нормально.

Дополнительные ресурсы

Как создать график QQ в Excel
Как выполнить критерий согласия хи-квадрат в Excel

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

Пример сообщения о недопустимом вводе

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

Ситуации, в которых полезно использовать проверку данных

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

  • Ограничение данных предопределенными элементами списка: например, можно ограничить выбор отдела значениями «Бухгалтерия», «Финансовый отдел», «Отдел кадров» и т. д.

  • Ограничение использования чисел за пределами указанного диапазона: например, можно указать максимальный процент годового роста зарплаты сотрудника (например, 3 %) или разрешить только целое число от 1 до 100.

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

  • Ограничение времени, которое находится за пределами определенного промежутка времени: например, вы можете указать, что собрания должны проводиться в период между 8:00 и 17:00.

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

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

Подсказки и сообщения об ошибках

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

Подсказка для ячейки

Вы можете настроить сообщение на второй вкладке «Проверка данных».

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

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

Также можно выводить сообщение об ошибке при вводе пользователем неверных данных.

Предупреждение о недопустимых данных

Существует три типа сообщений об ошибке.

Значок

Тип

Описание

Значок "Остановить"

Остановка

Предотвращает ввод недопустимых данных в ячейку.

У сообщения Остановка есть два параметра: Повторить и Отмена.

Значок предупреждения

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

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

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

Значок уведомления

Информационное сообщение

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

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

Советы по использованию проверки данных

Обратите внимание на советы и рекомендации по использованию проверки данных в Excel.

Примечание: Если вы хотите использовать проверку данных в книгах в Службы Excel или Excel Web App, сначала потребуется создать ее в классическом приложении Excel.

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

  • Если необходимо защитить лист или книгу, выполните это действие после настройки параметров проверки. Перед тем как защитить лист, убедитесь, что разблокированы любые ячейки, которые необходимо проверить. В противном случае пользователям не удастся ввести данные в ячейки. См. статью Защита листа.

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

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

    Кружок означает недопустимые данные

    Чтобы обвести данные, выделите нужные ячейки и выберите Данные > Работа с данными > Проверка данных > Обвести неверные данные.

    Команда "Обвести неверные данные" на ленте

  • Чтобы быстро отменить проверку данных в ячейке, выделите ее и выберите Данные > Работа с данными > Проверка данных > Параметры > Очистить все.

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

  • Для создания раскрывающегося списка можно воспользоваться командой Присвоить имя (на вкладке Формулы в группе Определенные имена), которая позволяет определить имя для диапазона, содержащего список. После создания списка на другом листе можно скрыть лист, который содержит список, а затем защитить книгу, чтобы пользователи не смогли получить доступ к этому списку.

  • Если вы измените параметры проверки одной ячейки, вы можете автоматически применить изменения ко всем остальным ячейкам, имеющим такие же параметры. Для этого на вкладке Параметры установите флажок Распространить изменения на другие ячейки с тем же условием.

  • Если проверка данных не работает, проверьте указанные ниже условия.

    • Пользователи не копируют и не вставляют данные. Проверка данных предназначена для отображения сообщений и предотвращения ввода недопустимых данных только в том случае, если пользователь вводит данные непосредственно в ячейку. Если данные копируются или вставляются, сообщения не отображаются. Чтобы предотвратить копирование и вставку данных путем перетаскивания ячеек, выберите Файл > Параметры > Дополнительно > Параметры правки и снимите флажок Разрешить маркеры заполнения и перетаскивание ячеек, а затем защитите лист.

    • Выключен пересчет вручную.  Если включен пересчет вручную, невычисляемые ячейки могут повлиять на правильность проверки данных. Чтобы отключить пересчет вручную, откройте вкладку Формулы, в группе Вычисление выберите Параметры вычислений и щелкните параметр Автоматически.

    • Отсутствуют ошибки в формулах. Убедитесь, что формулы в ячейках, для которых включена проверка, не являются причиной возникновения ошибок, таких как #ССЫЛКА! или #ДЕЛ/0!. Пока ошибки не будут устранены, приложение Excel будет пропускать проверку данных.

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

    • Возможно, таблица Excel связана с сайтом SharePoint. В таблицу Excel, которая связана с сайтом SharePoint, добавить проверку данных невозможно. Чтобы добавить проверку данных, необходимо удалить связь таблицы Excel или преобразовать ее в диапазон.

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

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

Обновление или удаление проверки данных в книге, созданной другим пользователем

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

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

У вас есть вопрос об определенной функции?

Задать вопрос на форуме сообщества, посвященном Excel

Помогите нам улучшить Excel

У вас есть предложения по улучшению следующей версии Excel? Если да, ознакомьтесь с темами на портале пользовательских предложений для Excel.

Понравилась статья? Поделить с друзьями:
  • Тестирование в excel это
  • Тестирование microsoft word с ответами
  • Тестирование excel для работы
  • Тест что такое шаблон документа в word
  • Тест электронные таблицы в программе excel