Набор инженера НСИ для работы в EXCEL

c3f1be51c1ac4f905baf5cbedde12af4.PNG

Всем привет!

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

Очень часто сталкиваешься со следующей задачей. Есть таблица с искомыми данными. Необходимо эти данные добавить в другую таблицу в соответствии с уникальными ключами (в моем случае это ID из ПО Bimeister, SAP и т. д.). Для такой задачи используются функции ВПР, ИНДЕКС + ПОИСКПОЗ, и относительно новая функция ПРОСМОТРX. Работа этих функций, на мой взгляд, хорошо описана на сайте «Планета Excel». Однако для более целостного восприятия материала, считаю нужным немного рассказать о ней.

Функция ПРОСМОТРX.

В моей работе до 30% рабочего времени приходится использовать либо эту функцию, либо её аналоги. Данная функция появилась в январе 2020 года. Соответственно, более ранние версии MS Excel не имеют её в своем арсенале.

Рассмотрим пример. Имеется «Таблица 1», в которую надо внести данные в столбец «Максимальный расход» из «Таблицы 2», на основании «ключа» — столбца «Системный номер ID».

Таблица 1.

Таблица 1.

Таблица 2.

Таблица 2.

В упрощенном виде данная функция имеет следующий синтаксис:

=ПРОСМОТРX(искомое_значение; просматриваемый_массив; возвращаемый_массив)

«Искомое_значение» — значение из столбца «Системный номер ID» в текущей строке;

«Просматриваемый_массив» — Excel ищет значение и «запоминает» номер строки в этом столбце;

«Возвращаемый_массив» — Excel возвращает элемент этого столбца, под номером, который был найден в «просматриваемом массиве».

В ячейке D2 вводим следующую формулу:

=ПРОСМОТРX([@[Системный номер ID]];'[Таблица 2.xlsx]Лист1'!$A:$A;'[Таблица 2.xlsx]Лист1'!$B:$B)

Далее «протягиваем» формулу ПРОСМОТРX на весь столбец и получаем нужный результат.

cbc36a90e33083da8a8b1c9c0dd5a6c0.png

Здесь стоит упомянуть один нюанс. Если вы выделяете не весь столбец с помощью символов $ (например, $B:$B), а конкретные ячейки в столбце, то возможна некорректная работа формулы из-за человеческого фактора.

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

Следует также отметить, что в нашем примере таблицы «отформатированы как таблица». Поэтому каждый столбец имеет название, указанное в формуле в квадратных скобках. А символ »@» перед названием столбца указывает на номер текущей строки в соответствующем столбце.

Чтобы получить такую таблицу, надо выделить область таблицы и на главной вкладке нажать «Форматировать как таблицу». Затем в раскрывшемся меню выбрать понравившийся вам вариант оформления.

0c2548db146520d6178fac4b939f8101.png

Исправить формат данных столбца.

Однако бывает так, что часть числовых данных Excel «не видит», и формула соответственно не работает. Появляются сообщения об ошибках. Как решить эту проблему?

Рассмотрим пример. Имеется условная таблица:

59104781fd9c4c5c2b7e718bf5b24194.png

Выделяем столбец с нужными числовыми значениями:

e797ce3b0c73062b6b1476dcff526bf8.png

Заходим на вкладку «Данные», затем «Текст по столбцам».

9cf0c327469fb9e364a5fd6332443c5e.png

Затем выбираем пункт «С разделителями» и нажимаем «Далее».

99ad80d6979b99ab5b558d71278e0c8d.png

Выбираем символ-разделитель «знак табуляции», жмем «Далее».

1367d82c128fffb7214f1ba3720fb631.png

На последнем этапе выбираем формат «Общий» и нажимаем «Готово».

400037c95e5ae286de6c30186933cee9.png

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

fb08ac7413128fc78e2b475e9b4a8e6d.png

Найти символ в строке.

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

Рассмотрим пример. Имеется таблица с кодами оборудования. Необходимо заменить часть кода после шестого вхождения символа »-».

eb5b0982ac05e6597eefc07a7b1b0873.png

Функция НАЙТИ позволяет найти только первое вхождение символа. Для обхода этого ограничения используем функцию «ПОДСТАВИТЬ». Заменим шестое вхождение искомого символа на другой символ, которого нет в этой строке. Например, символ »@».

В соседнем столбце введем выражение:

«=ПОДСТАВИТЬ([@[Код оборудования]];"-";"@";6)», где 6 — это номер вхождения символа.

7542063f80e4da6a8c7e4f9f2f59cb6f.png

 Дальше с помощью функции НАЙТИ, ДЛСТР и ЗАМЕНИТЬ можно заменить нужную часть строки.  В столбец2 вводим следующую формулу:

«=ЗАМЕНИТЬ([@Столбец1];НАЙТИ("@";[@Столбец1];1);(ДЛСТР([@Столбец1])-НАЙТИ("@";[@Столбец1];1)+1);"-KIP")»

1ad225ef0dc4089f6457cf7154b41162.png

Таким образом мы получили нужный результат.

Найти количество вхождений символа в строку.

Имеется таблица. Необходимо посчитать количество вхождения символа »-»  в строку.

32410ce7fe894769fb487479192263ff.png

Для решения этой задачи надо найти общее количество символов и вычесть из него количество символов этой строки без этого символа. С помощью функции ПОДСТАВИТЬ «удаляем» все вхождения этого символа.

Вводим формулу в соседний столбец:

=ДЛСТР([@[Код оборудования]])-ДЛСТР(ПОДСТАВИТЬ([@[Код оборудования]];"-";""))

c4be833413a405d7478385d0cd0bb72d.png

Получаем количество вхождений символа в каждой из ячеек.

Сцепить строки.

Для соединения (конкатенации) текстовых значений разных ячеек используются функция СЦЕПИТЬ, СЦЕП или ОБЪЕДИНИТЬ. Я в своей практике пользуюсь следующим символом:»&».

Рассмотрим пример. Надо объединить два столбца, вставив между ними точку и пробел:

098fa1a1588f5037c86add1d6267fea8.png

Формула с помощью функции СЦЕП:

=СЦЕП([@Имя];". ";[@Назначение])

 Вариант c »&»:

=[@Имя]&". "&[@Назначение]

 Результат, разумеется, будет одинаковый:

4ffd250c1d54c8bb92f411aa8664ef37.png

Найти кириллицу в названиях, написанных латиницей.

При обработке марок, маркировок оборудования в латинских названиях появляются буквы на кириллице. При обработке таких данных необходимо символы на кириллице найти и откорректировать. Для решения данной задачи я пользуюсь надстройкой «Ёxcel». Эта надстройка содержит много различных возможностей. Подробнее о ней можно почитать на сайте разработчика.

 Рассмотрим пример. Имеется столбец с маркировкой оборудования по взрывозащите.

c3ca297faf8dbd70bfa22202189128b6.png

Выделяем столбец и переходим во вкладку «Ёxcel»

dd5b775eabe9f2b5b9abf6a0cc2b4536.png

Далее переходим по пути «Редактировать» / «Кириллица и Латиница».

a5bfa31027dfb75ab093d11f8f2fb9d1.png

Далее выбираем «Выделить Кириллицу» и жмем галочку.

a2930ea046c7588cab4ab6c603f98ee4.png

Видим выделенные красным нужные символы.

956002b3abf1e1907505f3441b50b374.png

В случае необходимости заменить эти символы на латинские повторяем процедуру, описанную выше, но в меню выбираем «Заменить Кириллицу на Латиницу (x→x)».

65ed5e9a51d6ae297cdd2e6bd7278e1f.png

Унификация названий марок оборудования.

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

50cf7dafbd436e60b4b2341ece36a701.png2e72733a65584b3e491594c10b5828b3.png

Для решения этой задачи я использую Сводную таблицу.

Выделяем нужный столбец и на вкладке «Вставка» нажимаем «Сводная таблица». Затем выбираем «Из таблицы/диапазона».

1661e78c737252bc9ecdd234e8dcc8e9.png

Далее выбираем «Новый лист» и нажимаем «ОК»

69b2a174fa83c48378c47747e24726e8.png

В открывшемся новом листе в поле «Поля сводной таблицы» перетаскиваем название столбца «Марка» в поле «Строки» и в поле «Значения».

8a20f0541f7201a34ffa41f09f7e3427.png2435e4769096d279f1ccd3f60fbf60b2.png

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

4ee221628d5e5a4feafdc5793175d489.png

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

7779dafcfa6247235679944eaf0d1303.png

Для того, чтобы обновить значения в сводной таблице, нажимаем «Обновить все» на вкладке «Данные».

1b35b89929e176efe958014bf5f69d1d.png

Заключение.

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

© Habrahabr.ru