Все темы дня
Обучение

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

Дата публикации: 06.11.2024 09:00
15 619
Время прочтения: 3 минуты
VBA в «Экселе»: как это работает и какие задачи можно выполнять

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

Почему Google Sheets

Вместо «Экселя» мы используем сервис 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-нотацией. 
Excel для личных финансов
Читать в Telegram
telegram icon

Обучение

Материалы по теме