Image

5 полезных скриптов на Python для автоматизации рутинных задач в Excel

Объединение электронных таблиц, очистка экспортированных данных и разделение отчетов — необходимые, но скучные задачи. Эти скрипты на Python берут на себя рутинные части работы, позволяя вам сосредоточиться на главном.

5 полезных скриптов на Python для автоматизации рутинных задач в Excel
Изображение предоставлено автором.

# Введение

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

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

Все скрипты можно найти на GitHub .

# Объединение нескольких файлов Excel

// Болевая точка

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

// Что делает скрипт

Этот скрипт сканирует папку на наличие файлов .xlsx и .csv, объединяет все их данные в один унифицированный лист и записывает чистый объединенный выходной файл. При желании он может добавить столбец «Источник», чтобы вы всегда знали, какая строка из какого файла, и автоматически обрабатывает несоответствие порядка столбцов.

// Как это работает

Скрипт использует pandas для чтения всех файлов в целевом каталоге, выравнивает столбцы по имени, а не по положению, и объединяет все в один DataFrame. Настраиваемый флаг add_source_column добавляет исходное имя файла к каждой строке. Несоответствия столбцов регистрируются в журнале, чтобы вы знали, были ли в некоторых файлах лишние или отсутствующие поля. Вывод записывается с помощью openpyxl и включает вкладку сводки, показывающую количество строк по каждому файлу.

Получите скрипт для объединения файлов Excel

# Поиск и пометка повторяющихся строк

// Болевая точка

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

// Что делает скрипт

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

// Как это работает

Скрипт использует pandas для точного обнаружения дубликатов и RapidFuzz для нечеткого сопоставления строк по настраиваемым ключевым столбцам. Каждой строке присваивается идентификатор группы дубликатов и процент достоверности совпадения. Выходной файл Excel использует форматирование openpyxl для выделения кластеров дубликатов. На отдельном сводном листе отображается общее количество найденных дубликатов с разбивкой по типу совпадения.

Получите скрипт для поиска дубликатов

# Очистка и стандартизация неструктурированных экспортированных данных

// Болевая точка

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

// Что делает скрипт

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

// Как это работает

Скрипт считывает конфигурационный файл, в котором имена столбцов сопоставляются с операциями очистки: date_format, title_case, strip_whitespace, phone_normalize, remove_blank_rows и другие. Каждая операция применяется последовательно. На второй лист выходного файла записывается сравнительный журнал изменений, показывающий исходные и очищенные значения для каждой измененной ячейки. Ничего не удаляется автоматически. Если значение не может быть обработано, оно помечается в столбце _clean_errors.

Получите скрипт для очистки данных

# Разделение одного листа на отдельные файлы по значению столбца

// Болевая точка

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

// Что делает скрипт

Этот скрипт считывает один лист Excel и разбивает его на отдельные выходные файлы — по одному для каждого уникального значения в указанном столбце. Каждый выходной файл содержит только строки для этого значения, с сохранением исходного форматирования. Имена файлов генерируются автоматически на основе значений столбцов. При желании, он может отправлять каждый файл в качестве вложения в электронное письмо, используя предоставленное вами сопоставление имени и адреса электронной почты.

// Как это работает

Скрипт группирует DataFrame по целевому столбцу с помощью pandas, а затем записывает каждую группу в отдельный файл .xlsx с помощью openpyxl. Шаблон именования, например Sales_Report_{value}_{date}.xlsx, позволяет управлять форматом имени выходного файла. Заголовки столбцов, типы данных и базовое форматирование сохраняются в каждом выходном файле. Дополнительный режим отправки по электронной почте считывает CSV-сопоставление {value} → {email address} и отправляет каждый файл по протоколу Simple Mail Transfer Protocol (SMTP) .

Получите скрипт для разделения листов

# Создание сводного отчета на основе исходных данных

// Болевая точка

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

// Что делает скрипт

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

// Как это работает

В конфигурационном файле определяются поле даты, поле значения, столбцы группировки и конкретные агрегации для выполнения. Скрипт использует pandas для всей логики агрегации и openpyxl с Matplotlib для построения диаграмм. Каждому типу сводки отведена отдельная вкладка. Условное форматирование выделяет самые высокие и самые низкие значения. Отчет предназначен для перегенерации по запросу, и повторный запуск скрипта корректно перезапишет предыдущий результат.

Получите скрипт генератора сводных отчетов

# Завершение

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

Название скрипта Цель Основные характеристики Наилучший вариант использования
Объединение файлов Excel Объединение нескольких файлов Excel/CSV Выравнивание столбцов, отслеживание источников, сводная таблица Объединение данных из нескольких источников
Поиск дубликатов Выявление точных и неточных дубликатов Нечеткое сопоставление, показатели достоверности, цветовая подсветка Очистка наборов данных с повторяющимися записями
Очиститель данных Стандартизация неструктурированных экспортированных данных Правила форматирования, нормализация, журнал изменений Предварительная обработка исходных внешних данных
Разделитель листового металла Разделите один лист на несколько файлов. Автоматическое именование файлов, группировка, дополнительная отправка электронных писем. Распределение отчетов по категориям/регионам
Генератор сводных отчетов Создание сводных отчетов на основе исходных данных Автоматизированное создание сводных таблиц, диаграмм, вывод данных в несколько вкладок. Регулярная отчетность и информационные панели

Успешной автоматизации!

Бала Прия С. — разработчик и технический писатель из Индии. Ей нравится работать на стыке математики, программирования, анализа данных и создания контента. В сферу её интересов и компетенции входят DevOps, анализ данных и обработка естественного языка. Она любит читать, писать, программировать и пить кофе! В настоящее время она работает над изучением и распространением своих знаний среди сообщества разработчиков, создавая учебные пособия, руководства, аналитические статьи и многое другое. Бала также создает увлекательные обзоры ресурсов и обучающие материалы по программированию.

Источник: www.kdnuggets.com

✅ Найденные теги: 5, Excel, Python, Автоматизация, Задачи, новости, Скрипты

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

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

галерея

Обезьяна сидит на земле, рядом ветки дерева и кусочки пищи.
Роботы в ряд, футуристический интерьер, бело-серая цветовая гамма, технологии будущего.
Белые грибы в лесу, окружённые зеленью и опавшими листьями, на солнечной поляне.
Полнолуние на ночном небе, яркий свет Луны в темноте, астрономия и природа.
Космический аппарат в открытом космосе, вид Земли с ярким лучом света.
Ноутбук с золотыми криптовалютными монетами на экране, окружён зелёными графиками.
ideipro logotyp
Искусственный интеллект в офисе с облаком данных и технологическими иконками.
Технология учета лекарственных препаратов помогла этой системе здравоохранения избежать более чем 500 случаев нехватки медикаментов.
Image Not Found
Космический аппарат в открытом космосе, вид Земли с ярким лучом света.

На орбиту выведены первые 16 спутников группировки «Рассвет»

© БЮРО 1440 23 марта в 20 часов 24 минуты состоялся первый пакетный запуск 16 космических аппаратов спутниковой группировки широкополосной связи разработки БЮРО 1440. Об этом сообщает телеграм-канал КБ. После выхода на опорную орбиту спутники успешно отделились…

Апр 9, 2026
Ноутбук с золотыми криптовалютными монетами на экране, окружён зелёными графиками.

Британский криптограф Адам Бэк опроверг сообщение NYT о том, что он является создателем биткойна Сатоши Накамото.

Вкратце Источник изображений: VICTOR HABBICK VISIONS/SCIENCE PHOTO LIBRARY / Getty Images Личность Сатоши Накамото, псевдонима создателя биткойна, долгое время оставалась загадкой. Но, согласно новому расследованию, опубликованному в New York Times, Сатоши может быть Адамом Бэком, британским криптографом,…

Апр 9, 2026
ideipro logotyp

Модель «мини-мозга» исследует воздействие сотрясения мозга на клеточном уровне.

Автор: сотрудники Bio-IT World 9 апреля 2026 г. | Профессор биомедицинской инженерии из Университета Цинциннати изучает, как клетки головного мозга подвергаются воздействию сотрясений, и как эта травма может привести к нейродегенеративным заболеваниям. Сотрясения мозга являются причиной до…

Апр 9, 2026
Искусственный интеллект в офисе с облаком данных и технологическими иконками.

Я заменил Vector DBs на шаблон Memory Agent от Google для своих заметок в Obsidian.

Постоянная память ИИ без эмбеддингов, Pinecone или докторской степени в области поиска сходства. Делиться Изображение, сгенерированное Gemini Всё началось с того, что мой ассистент в Obsidian постоянно терял память. Я не хотел запускать Pinecone или Redis только…

Апр 9, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых