Уникальные значения Excel: как собрать список модулей курса
В реестре материалов код одного модуля повторяется у видео, памятки и задания. Функция УНИК позволяет вывести отдельный список модулей, сохранив каждую исходную запись. Разберём пример и две частые ошибки настройки.
В этом материале
Отделите реестр материалов от списка модулей
Представим редакционный реестр: каждая строка описывает один материал, а столбец A хранит код его модуля. В A1 стоит заголовок «Модуль». Ячейки A2:A7 содержат M01, M02, M01, M03, M02, M04 именно в таком порядке. Во всех кодах используется латинская буква M. Остальные столбцы могут содержать название файла и ответственного, но для нашей операции они не нужны.
Шесть строк описывают шесть материалов четырёх модулей. Повтор M01 закономерен: к этому модулю относятся два разных материала. Если применить удаление дубликатов Excel только по коду, можно потерять нужные записи. Задача здесь другая: оставить реестр целиком и рядом получить перечень представленных модулей. Такой перечень пригодится для навигации редактора или сверки с планом курса.
Выведите отдельный массив функцией УНИК
Выберите свободную ячейку D2 за пределами исходного реестра и введите =УНИК(A2:A7). В английской локализации название функции — UNIQUE: =UNIQUE(A2:A7). Ожидаемый результат в D2:D5 — M01, M02, M03, M04. Формула записывается в начальную ячейку, а значения результата занимают несколько соседних ячеек. Перед вводом убедитесь, что место под список свободно.
В документации Microsoft по функции УНИК описаны динамический массив и необязательные аргументы. Функция доступна, в частности, в Excel для Microsoft 365, Excel 2021 и Excel 2024. Если приложение не распознаёт название, сначала проверьте версию и язык формул. Не заменяйте формулу удалением строк просто ради похожего внешнего результата: это изменит исходные данные и назначение операции.
Не перепутайте разные значения слова «уникальный»
По умолчанию УНИК возвращает каждый различающийся код один раз. Дополнительный аргумент exactly_once меняет задачу: при значении ИСТИНА остаются только коды, которые встретились в исходнике ровно один раз. Для нашего примера формула =УНИК(A2:A7;ЛОЖЬ;ИСТИНА) возвращает M03 и M04. Английский вариант — =UNIQUE(A2:A7,FALSE,TRUE). Разделитель аргументов зависит от региональных настроек приложения.
M01 и M02 исчезают из такого результата, хотя соответствующие модули существуют и имеют материалы. Второй аргумент ЛОЖЬ задаёт сравнение строк в вертикальном диапазоне; третий включает отбор однократных значений. Для полного списка представленных модулей оставьте обычную формулу без этих аргументов. Однократный вариант используйте лишь для отдельного вопроса, например «какие коды пока встречаются только в одной строке реестра». Он не доказывает, что материал действительно единственный во всём проекте.
Проверьте границу исходного диапазона
Формула с A2:A7 читает именно указанный диапазон. Если в A8 добавить новый материал модуля M05, эта строка не войдёт в прежнюю ссылку автоматически. В контрольном примере список по-прежнему содержит четыре кода. Измените ссылку на A2:A8: теперь ожидается пятый код M05. Для новой строки результата нужно свободное место, в нашем случае D6.
Если реестр постоянно растёт, можно организовать источник как умную таблицу Excel и использовать структурированную ссылку на её столбец. Это отдельная настройка: само наличие функции УНИК не превращает обычный диапазон в расширяемую таблицу. При передаче книги другому редактору укажите, какой вариант используется. Человек должен понимать, достаточно ли добавить запись в таблицу или нужно проверить конечную строку ссылки.
Разберите неожиданные коды до выдачи результата
Если визуально одинаковый модуль появился дважды, исследуйте исходные записи. В код могли попасть лишний пробел или похожая кириллическая буква вместо латинской. Для человека эти записи почти не различаются, однако обозначают разные текстовые значения. Сначала договоритесь о едином формате кодов и исправьте конкретную причину. Не объединяйте автоматически всё, что кажется похожим: M01 и M010 могут быть двумя настоящими модулями.
Если результат не разворачивается, проверьте ячейки, которые он должен занять. Не стирайте соседние данные вслепую: перенесите вывод в свободную область. Убедитесь также, что в диапазон не вошёл заголовок «Модуль» и не включён длинный пустой хвост. На первом испытании используйте наш короткий пример, где результат можно перечислить вручную. После этого переходите к рабочему реестру и сверяйте несколько кодов с исходными строками.
Используйте список как свидетельство наличия записей
Четыре полученных кода означают, что в выбранном диапазоне представлены четыре различных значения модуля. Это ещё не отчёт о готовности программы: внутри M01 может быть только черновик, а запланированный M05 мог вообще не попасть в реестр. Для контроля полноты отдельно сравните результат с утверждённым планом модулей и проверьте статусы материалов. Отсутствие кода и отсутствие готового урока — разные наблюдения.
Перед передачей файла выполните короткую приёмку: исходные шесть строк остались на месте; обычная формула даёт четыре кода; режим однократных значений даёт два; расширение диапазона включает добавленный M05. Подпишите рядом назначение списка и источник. Если копируете результат как обычные значения для разового отчёта, укажите дату: такая копия больше не обновляется вместе с реестром. Тогда редактор сможет отличить текущую формулу от сохранённого снимка данных.
Источники
Создайте свой курс в Umhub
Примените то, что узнали: соберите программу, добавьте материалы и пригласите учеников.