Автоматизация обновления Excel-отчета из Google Sheets

VBA-инструмент для автоматического переноса данных из Google Sheets в Excel-отчет по одной кнопке

Автоматизация обновления Excel-отчета из Google Sheets — фото 1
нажмите для просмотра в полном размере

Слайд 1 из 3

ОПИСАНИЕ

Разработал инструмент автоматического обновления Excel-отчета на базе VBA. Задача состояла в том, чтобы связать рабочий Excel-файл руководителя с Google Sheets, где регулярно обновлялись исходные данные, и убрать ручное копирование между таблицами. Решение работает по нажатию одной кнопки в Excel: макрос скачивает актуальную версию Google Таблицы в формате .xlsx, открывает ее как временный файл, забирает данные из 5 заданных листов и переносит их в соответствующие листы основного Excel-отчета. При обновлении сохраняются не только значения, но и визуальная структура таблиц: цвета ячеек, шрифты, выравнивание, ширина колонок, высота строк и фильтры. Отдельно была решена проблема с отображением длинных баркодов. Excel автоматически преобразовывал такие значения в научный формат вида E+12, поэтому в макрос была добавлена обработка колонок с баркодами и принудительное форматирование значений в читаемом виде. Также решение было адаптировано под разные операционные системы: на macOS загрузка файла выполняется через curl, а на Windows через системный API URLDownloadToFile. Благодаря этому один и тот же Excel-файл можно использовать как на моем компьютере, так и на компьютере руководителя без установки дополнительных программ.

ИСПОЛЬЗУЕМЫЕ ИНСТРУМЕНТЫ

  • VBA
  • Microsoft Excel
  • Google Sheets
  • Google Sheets Export API
  • Windows API
  • macOS curl

РЕЗУЛЬТАТ

  • Реализовал обновление Excel-отчета из Google Sheets по одной кнопке.
  • Настроил импорт данных из 5 листов Google Sheets в 5 заданных листов Excel.
  • Сохранил форматирование таблиц при переносе данных: цвета, шрифты, выравнивание, ширину колонок и высоту строк.
  • Добавил автоматическое включение фильтров на обновляемых листах.
  • Исправил отображение длинных баркодов, которые Excel автоматически переводил в формат E+12.
  • Адаптировал решение для работы на Windows и macOS.

AI АССИСТЕНТ

Задать вопрос по этой работе