Введение
В процессе проектирования систем электроснабжения промышленных объектов значительная часть исходной информации для заказа оборудования формируется в формате электронных таблиц Microsoft Excel. Это связано с удобством ручного ввода, широкой распространённостью и простотой обмена данными между подразделениями. Однако Excel-спецификации, как правило, не отвечают требованиям реляционных баз данных: в них используются разные форматы записи чисел (точка или запятая), текстовые комментарии в ячейках с числами, незаполненные поля, а также символы типа «−» (прочерк) вместо нулевых значений [1, 2].
При переносе таких данных в СУБД (например, Microsoft Access) возникают ошибки типов, потеря информации и нарушение ссылочной целостности. Традиционный подход предполагает ручную вычитку и исправление каждой ячейки, что занимает до 8 часов на один проект и не гарантирует полной корректности.
Постановка проблемы
На практике исходные таблицы для формирования задания заводу-изготовителю на НКУ содержат следующие типичные дефекты:
– Нечисловые символы в числовых полях: например, в столбце «Мощность привода» могут встречаться значения «1.5», «2,5», «-» или «нет». Access при импорте интерпретирует эти ячейки как текстовые, что делает невозможным расчётные операции.
– Смешанные разделители дробной части: в одних строках используется точка (1.5), в других — запятая (2,5). Это приводит к неверному чтению чисел (в зависимости от региональных настроек).
– Пустые строки и поля: вместо пропуска ячеек пользователи часто вводят прочерк «−» или тире, что воспринимается как текстовое значение.
– Несоответствие типов данных: поля дат, логических значений и текстовых кодов не стандартизированы, что нарушает связи между таблицами при создании запросов.
В результате ручная подготовка данных для одного проекта (типовой щит из 150 позиций) требует около 8 часов работы инженера-проектировщика, а доля ошибок в числовых полях достигает 15 % (по данным экспертного опроса). Это не только задерживает выпуск документации, но и ведёт к пересогласованиям с заводами-изготовителями.
Таким образом, необходима формализованная методика, которая позволила бы автоматически приводить исходные Excel-данные к реляционному виду с минимальным участием человека.
Материалы и методы
Объект исследования — набор таблиц, используемых для формирования технического задания на НКУ, а именно:
– основная таблица «Исходные данные» (содержит до 25 столбцов: коды оборудования, наименования, технические параметры);
– справочная таблица «Приводы» (названия, мощности, род тока);
– справочная таблица «Контакторы» (шаблоны моделей).
Для обработки выбрана СУБД Microsoft Access (версия 2019) как наиболее распространённая в проектных подразделениях промышленных предприятий. Встроенный язык VBA позволяет создавать модули автоматической обработки, не требующие установки дополнительного ПО.
Методика включает четыре этапа:
1. Предварительная структуризация и определение ключевых полей
Перед импортом необходимо определить структуру целевой базы данных:
– первичные ключи (например, Load_KKS — уникальный код позиции);
– внешние ключи для связей со справочниками;
– типы данных для каждого поля (табл. 1).
Таблица 1
Рекомендуемое соответствие полей Excel и типов данных в Access (составлена авторами)
|
Название поля в Excel |
Тип данных в Access |
Примечание |
|
Load_KKS / Completed |
Текстовый (50) |
Уникальный код |
|
Load_RatedPower |
Числовой (с плавающей точкой) |
Мощность, кВт |
|
Load_OperatingCurrent |
Числовой (с плавающей точкой) |
Номинальный ток, А |
|
t / Время срабатывания |
Числовой (с плавающей точкой) |
Время, с |
|
U / Ном напряжение |
Числовой (с плавающей точкой) |
Напряжение, В |
|
Current type |
Текстовый (10) |
Род тока (AC/DC) |
|
Motor drive |
Текстовый (50) |
Тип привода (связь со справочником) |
2. Нормализация форматов в Excel (подготовка к импорту)
С использованием встроенных функций Excel (замена, очистка) выполняется первичная обработка:
– замена всех точек на запятые в числовых полях (с учётом региональных настроек);
– удаление пробелов и невидимых символов (TRIM);
– замена прочерков «−» и пустых строк на пустые ячейки (NULL).
Однако этот этап не решает проблему смешанных форматов, поэтому далее применяется автоматизированная процедура в Access.
3. Импорт и автоматическая трансформация через VBA-модуль
Разработан модуль VBA «Преобразование исходных данных», который выполняет:
– Цикл по всем записям импортированной таблицы.
– Замену разделителей в полях с плавающей точкой (. →,) — код приведён в приложении 1 ВКР.
– Проверку пустых значений — если ячейка содержит прочерк или пробелы, она заменяется на Null (пустая строка), что корректно интерпретируется как отсутствие данных.
– Приведение типов — для числовых полей выполняется попытка преобразования к типу Double; при ошибке поле помечается как некорректное и пользователь информируется.
Фрагмент основного цикла:
4. Проверка целостности и установка связей
После нормализации таблица связана со справочниками через окно «Связи» в Access. Для импортированных данных автоматически проверяется наличие внешних ключей (например, Motor drive должно существовать в таблице «Приводы»). При нарушении связи запись выделяется для ручного уточнения.
Результаты
Предложенная методика была апробирована на реальном проекте из 150 строк исходных данных. Результаты обработки приведены в таблице 2.
Таблица 2
Сравнение показателей до и после внедрения методики (составлена авторами)
|
Показатель |
Ручная подготовка |
Автоматизированная подготовка |
|
Время подготовки, ч |
8 |
0,03 (≈2 мин) |
|
Количество ошибок в числовых полях, % |
15 |
0 |
|
Доля некорректных записей (пустые/прочерки) |
10 % от строк |
0 % (все очищены) |
|
Затраты на перепроверку связей, ч |
2 |
0,2 |
После работы модуля:
– все числовые поля корректно преобразованы в тип Double;
– пустые строки заменены на Null, что позволило корректно выполнять агрегирующие запросы (среднее, сумма) без ошибок;
– справочные таблицы были успешно связаны через внешние ключи.
Время обработки сократилось с 8 человеко-часов (включая вычитку) до автоматического выполнения за 2 минуты. Относительное снижение трудозатрат составило 99,6 % (расчёт: (8–0,03) / 8 × 100 %). Количество ошибок в данных сведено к нулю, поскольку все преобразования выполняются по строгим правилам, исключающим субъективный фактор.
Обсуждение
Предложенная методика комплекснее ручных правок и Excel-формул: она охватывает все этапы, воспроизводима, интегрирована с реляционной моделью. Ограничение — необходимость предварительного описания структуры полей, но это одноразовая настройка. Методика может тиражироваться на другие спецификации (кабельные журналы, опросные листы).
Заключение
Разработана методика преобразования Excel-спецификаций в реляционную базу Access, включающая нормализацию, автоматическую очистку VBA и проверку целостности. Время подготовки сокращено с 8 ч до 2 мин, ошибки в числовых данных сведены к нулю. Это ускоряет выпуск технических заданий и может служить основой единого информационного пространства проектных данных.
Литература:
1. Ковалева М. А. Создание баз данных в Microsoft Access: учеб.-метод. пособие. — М.: Мир науки, 2019. — 94 с. — URL: https://izd-mn.com/PDF/35MNNPU19.pdf (дата обращения: 05.08.2026).
2. Ахметталиева В. Р., Галятдинова Л. Р. Базы данных Microsoft Access 2013: учеб.-метод. пособие. — М.: РГУП, 2017. — 96 с. — URL: https://www.iprbookshop.ru/86345.html (дата обращения: 05.08.2026).
3. Григорьев А. В., Петров В. С. Интеграция Excel-данных в корпоративные системы управления проектами // Информационные технологии в проектировании и производстве. — 2020. — № 2. — С. 17–23. — URL: https://www.elibrary.ru/item.asp?id=43987712 (дата обращения: 05.08.2026).
4. Смирнов Д. А., Фёдоров Е. П. Автоматизация импорта технических спецификаций в базы данных // Вестник компьютерных и информационных технологий. — 2022. — № 4(202). — С. 33–40. — DOI: 10.14489/vkit.2022.04.pp.033–040. — URL: https://doi.org/10.14489/vkit.2022.04.pp.033–040 (дата обращения: 05.08.2026).
5. Варламов Н. А. VBA для Microsoft Office 2019. — СПб.: БХВ-Петербург, 2020. — 432 с. — ISBN 978–5–9775–6634–2. — URL: https://bhv.ru/product/vba-dlya-microsoft-office-2019/ (дата обращения: 05.08.2026).

