«Зачем мне RPA, если есть макросы?». Если вы задумывались о внедрении RPA и имеете базовые навыки программирования, наверняка вас посещал этот вопрос.
В этой статье мы разберёмся в чём разница между VBA и RPA, и обсудим варианты использования каждого из них.
Что такое VBA и где он применяется
VBA (Visual Basic for applications) — язык программирования, который используется для приложений Microsoft Office. Чаще всего VBA применяется в Excel Macros, где настраивается автоматическое выполнение заданной последовательности действий.
Мы говорим о макросах потому, что RPA часто сравнивается именно с ними. В основе работы макросов лежат сценарии — последовательности программных кодов, которые используются для выполнения задач в Excel. Например, при применении специального форматирования для экспорта данных, можно написать макрос для этой задачи и запускать его каждый раз, когда выполняете её.
4 варианта использования макросов
1. Обработка данных
Обработка данных может включать ежедневные повторяющиеся задачи по очистке и форматированию данных:
- Создание списка уникальных значений путём удаления дубликатов
- Подбор и очистка пустых строк
- Создание формул
- Выделение последнего использованного столбца, строки или ячейки
2. Сводные таблицы
Одна из часто используемых функций Excel — сводные таблицы. Создание, обновление и обслуживание таких таблиц может занимать несколько часов. К счастью, макросы могут автоматизировать почти все действия::
- Форматирование данных
- Раскрытие и сворачивание строк таблицы
- Поправки к форматированию даты для полей сгруппированных сводных таблиц
- Макросы для отображения деталей
3. Рабочие книги
Макросы позволяют автоматизировать задачи, связанные с рабочими книгами и листами:
- Перечень листов
- Создание оглавления
- Открытие и закрытие рабочих книг
- Возможность скрыть листы
- Сохранение всех рабочих книг
4. Надстройки и пользовательские формы
Когда нужно упростить совместную работу с помощью Excel, применяются пользовательские формы, то есть окна с интерактивными элементами управления, которые могут открываться поверх Excel.
Надстройки устанавливаются на ПК пользователя, что позволяет ему открывать и запускать макросы других пользователей в своих книгах.
Более сложные задачи также могут быть частично автоматизированы макросами. Как вы видите, макросы Excel могут автоматизировать множество процессов.
Сравнение RPA и VBA
Роботизированная автоматизация процессов (RPA) — это технология, которая позволяет людям внедрять программных роботов для имитации действий пользователей в компьютерных системах. Некоторые называют RPA продвинутыми макросами, они похожи на автоматизацию по своей основной цели: имитировать и автоматизировать повторяющиеся рутинные задачи. Тем не менее у RPA более широкая функциональность.
Так в чём же разница между RPA и VBA? Одна из наиболее важных особенностей, отличающих RPA от VBA, заключается в том, что программные роботы могут использоваться в любых приложениях, а VBA только в Microsoft Office Suite. Помимо этого, макросы не могут автоматизировать сбор и ввод данных в книги Excel. Давайте представим, что вам нужно собирать эти данные из разных источников, тогда процесс становится ещё более трудоёмким.
Чтобы лучше понять все ключевые отличия RPA и VBA, мы подготовили таблицу:
RPA и VBA: 3 примера использования
Давайте представим 3 бизнес-процесса, которые иллюстрируют идеальный сценарий использования RPA, VBA и обеих технологий вместе.
1. VBA: сортировка, фильтрация и упорядочивание данных в Excel
Сценарий: отдел маркетинга компании, специализирующейся на розничной торговле, хранит маркетинговые данные в файле Excel, который содержит макросы, позволяющие сортировать, фильтровать и делиться информацией на основе определённых критериев. После обработки данных макросы помещают данные в диаграммы, которые наглядно демонстрируют текущие показатели и динамику во времени.
Почему VBA: в этом сценарии используются макросы, поскольку все исходные данные собираются и обновляются вручную в одной книге Excel.
2. RPA: обработка данных из различных источников
Сценарий: отдел снабжения крупной компании должен ежедневно создавать отчёты, которые включают анализ данных, хранящихся в ERP-системе, и определение наличия товаров в соответствии с критериями. После этого отчёт должен быть передан в центральный офис для обработки.
Почему RPA: программные роботы RPA используются для ввода и извлечения данных из разных источников. RPA собирает все данные, относящиеся к элементам инвентаризации, вводит данные в электронную таблицу Excel, сортирует и анализирует их, создаёт и отправляет отчёт в центральный офис и уведомляет все заинтересованные стороны по электронной почте.
3. RPA + VBA
В приведённом выше примере, где все действия выполняют программные роботы RPA, мы можем использовать макросы на тех участках цепочки, где задействован Excel. Тогда процесс будет выглядеть так:
Программный робот собирает данные из ERP, помещает их в электронную таблицу Excel, затем данные обрабатываются с помощью макросов. Заключительные этапы (отправка и уведомление) снова будут выполнены программным роботом. Эти два сценария отличаются не сильно, но следует отметить, что функции макросов будут запущены с помощью роботов, а не вручную. Это означает, что процесс всё ещё является программной автоматизацией, хотя в нём частично используется VBA.
Заключение
В этой статье мы определились с тем, что такое VBA и RPA, обнаружили различия между двумя этими инструментами и дали практические примеры их использования.
Нельзя отрицать, что RPA имеет много общего с VBA. Но автоматизация значительно опередила макросы.
Преимущества RPA по сравнению с VBA видны на разных уровнях: начиная с функциональности и заканчивая такими инструментами, как Orchestration или Studio, которые позволяют организовывать и отслеживать все этапы автоматизации без знаний IT.
По этой причине выбор не так уж и сложен. Всё, что вам нужно сделать — оценить текущие бизнес-процессы и понять достаточно ли вам частичной автоматизации в Excel или нужна более широкая область применения.
Если вам ближе второй вариант, то попробуйте бесплатно две недели автоматизации процессов от ElectroNeek!