Войти в почту

VBA в «Экселе»: как это работает и какие задачи можно выполнять

VBA, или Visual Basic for Applications, — это упрощенная версия языка программирования от компании Microsoft. Упрощенный Visual Basic помогает автоматизировать рутинные операции прямо в «Экселе». Расскажем, как этим пользоваться на примере сервиса Google Sheets.

Факт

Как выглядит программирование в Google Sheets

Сервис Google Sheets не работает с Visual Basic for Applications (VBA), потому что это внутренний язык программирования для продуктов Microsoft Office («Ворда», «Экселя» и других). Зато в Google Sheets есть поддержка одного из самых популярных языков в мире — JavaScript. Именно на нем и пишутся программы для таблиц.

Программирование при работе с «Экселем» или Google Sheets помогает выполнять монотонные повторяющиеся задачи. Например, вы записываете траты в сервисе Google Docs и хотите, чтобы они автоматически подтягивались в таблицу. Чтобы не переносить их вручную, можно написать программу на JavaScript. Или вы ведете финансовый учет так, что на одном листе таблицы у вас расписан один месяц, то теперь с помощью программы можно собрать общую статистику по месяцам за несколько лет.

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

Стори

С чего начать программирование на VBA или JavaScript

Общий принцип создания программ для личного финансового учета выглядит так. Сначала вы пишете программный код, в котором указываете нужную вам последовательность действий. Например, взять в таблице одну строчку, проверить ее на дубли, и если они есть — удалить, затем взять следующую строчку. Чтобы начать писать программный код, нужно открыть встроенный редактор: нажмите Расширения → Apps Script:

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

function myFunction() { var spreadsheet = SpreadsheetApp.getActive(); var sheet = spreadsheet.getActiveSheet(); sheet.getRange(spreadsheet.getCurrentCell().getRow(), 1, 1, sheet.getMaxColumns()).activate(); spreadsheet.getActiveRangeList().setBackground('#4c1130') .setFontColor('#ffffff') .setFontWeight('bold'); spreadsheet.getActiveSheet().setFrozenRows(1);};

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

Чтобы начать программировать, нужно:

Разбираться в основах JavaScript. Это один из самых популярных языков программирования, поэтому в Интернете достаточно много бесплатных курсов и учебников. Однако как и любой другой язык программирования, он требует наличие технического склада ума.Уметь работать с А1-нотацией. Например, нужно знать, что нотация Range("A1:B5") обращается к диапазону ячеек, а Range("A:A,C:C,F:F") — к столбцам А, С и F.

Таким образом, программирование в Google Sheets упрощает решение задач, но требует от пользователя специальных навыков в области IT.

Что нужно запомнить

VBA — язык программирования для «Экселя». JavaScript — для Google Sheets.Чтобы программировать в Google Sheets, нужно знать основы языка и уметь работать с А1-нотацией.

Кнопка со ссылкой