Программирование и ИИ
Office Scripts в Excel для браузера: как записать действия и запускать их по расписанию
Office Scripts — это сценарии на TypeScript для тех, кто повторяет одни и те же действия в Excel в браузере и хочет запускать их без участия человека. Запись превращает шаги в код, а поток Power Automate вызывает его по расписанию. По справке Microsoft сценарии работают в Excel в Интернете, Excel для Windows версии 2210 и новее и Excel для Mac[1]. Ниже — пример, запись, отличия от VBA и лимиты.
Коворкинг ведёт таблицу броней в OneDrive, а каждое утро кто-то подсвечивает крупные заказы и пересчитывает итоги вручную. Макросы VBA здесь не помогут: в Excel в Интернете они не работают, а сценарии Office Scripts — работают[2]. Сценарий хранится в облаке и запускается с любого компьютера.
Путь освоения такой. Сначала поймите задачу — какие действия повторяются в одной книге. Затем выберите инструмент: сценарий вместо макроса, если книга живёт в облаке. Освойте основы — запись, редактор кода и функцию main, — попробуйте прочитать сценарий в тренажёре и примените его к своей книге и потоку. Главное препятствие — лицензия: без подходящей подписки кнопок для сценариев не будет вовсе.
Ключевые факты: Office Scripts
- Сценарии для Excel пишут на TypeScript — надмножестве JavaScript[3].
- Для сценариев нужна коммерческая или учебная лицензия Microsoft 365[1].
- Excel для Windows поддерживает сценарии начиная с версии 2210[1].
- Сценарий отличается от макроса VBA тем, что запускается из Power Automate и не видит компьютер пользователя[2].
- Справка Microsoft требует для сценариев OneDrive для бизнеса и включённые подключённые возможности[1].
Что такое Office Scripts в Excel и кому они доступны
Office Scripts записывают действия в Excel и сохраняют их сценарием, который можно запустить снова. Справка Microsoft описывает инструмент так: средство записи превращает ручные шаги в повторно используемые сценарии, а редактор кода позволяет их править[4]. Сценарии хранятся в OneDrive, и ими можно делиться внутри организации[4]. Что умеет сценарий: ввести значения, отформатировать ячейки, создать таблицу Excel и повторить всё это на новой копии отчёта. Office Scripts в Excel особенно полезны, когда книгу ведут несколько человек в облаке: один сценарий даёт всем одинаковый результат.
В Google Таблицах похожую задачу решают записанные макросы, но внутри них создаётся Apps Script, а не код на TypeScript[5].
Сценарии доступны только с коммерческими и учебными лицензиями: Office 365 Business, Business Premium, ProPlus, A3, A5, E1, E3, E5 и F3[1]. Личной подписки в этом списке нет. Кроме лицензии нужны OneDrive для бизнеса и включённые подключённые возможности[1].
| Где запускается | Office Scripts |
|---|---|
| Excel в Интернете | да |
| Excel для Windows | да, версия 2210 или новее |
| Excel для Mac | да |
| Excel для iOS | нет |
| Power Automate | да |
Для Excel в Интернете браузеру нужны включённые сторонние файлы cookie, иначе вкладка Automate не появится[1]. В Windows дополнительно требуется WebView2[6].
Разобравшись с доступом, переходим к первой записи.
Как записать сценарий: Automate, Create from Recording и редактор кода
Сценарий Office Scripts записывают командой Automate → Create from Recording и останавливают кнопкой Stop[7]. Названия здесь даны по английской справке.
- Выберите Automate, затем Create from Recording — справа откроется панель Record Actions[7].
- Выполните действия: ввод, форматирование ячеек, создание таблицы Excel.
- Нажмите Stop и переименуйте сценарий кнопкой Rename[7].
- Запустите его через Automate → View Scripts и кнопку Run[6].
Абсолютный режим записи отличается от относительного тем, что правит те же ячейки, а относительный — текущую ячейку и соседние[7]. Абсолютный стоит по умолчанию, относительный выбирают в списке Record Actions[7].
Каждый сценарий обязан содержать функцию main с первым параметром типа ExcelScript.Workbook[3]. Пример по образцу справки — записать шапку в первую строку:
function main(workbook: ExcelScript.Workbook) {
let sheet = workbook.getActiveWorksheet();
let headerRange = sheet.getRange("A1:D1");
headerRange.setValues([["Переговорная", "Часов", "Цена/час", "Сумма"]]);
}
Прочитайте такой сценарий в тренажёре: урок спросит, что окажется в ячейке после запуска, и покажет, почему нужна подписка.
Однако запись — не единственное отличие от макросов: модель доступа у сценариев устроена иначе.
Сценарий или VBA: чем отличаются и что выбрать
Сценарии отличаются от макросов VBA тем, что видят только книгу и работают в браузере[2]. Английская справка о различиях подчёркивает: макросы VBA получают доступ ко всему компьютеру, а сценарии — только к книге[2].
| Платформа и признак | Office Scripts | VBA |
|---|---|---|
| Excel в Интернете | да | нет |
| Excel для Windows и Mac | да | да |
| доступ | только книга | весь компьютер |
| лицензия | коммерческая или учебная | не нужна |
| запуск по расписанию из Power Automate | да | нет |
| события Excel | нет | есть |
Если код должен срабатывать при изменении ячейки, такие сценарии не помогут: они не поддерживают события уровня Excel[2] и запускаются вручную или из потока Power Automate[2]. Один сценарий не может вызвать другой[3].
Power Automate выполняет код без открытия книги — по расписанию или по событию вроде нового письма. Каждый пользователь может вызвать действие Run script не больше 1 600 раз в сутки, счётчик сбрасывается в полночь UTC[1]. Синхронная операция потока ограничена 120 секундами[1].
Остаётся понять, когда сценарий выбирать не стоит.
Когда сценарий не подойдёт: лицензия, лимиты и платформы
Сценарий не подойдёт, если нет коммерческой лицензии или книгу открывают на iPhone. Ограничения заданы платформой, и обойти их настройкой книги нельзя.
- Если у вас личная подписка Microsoft 365, её нет в списке лицензий[1] — для настольного Excel остаются макросы, записанные на вкладке разработчика.
- Когда книгу открывают в Excel для iOS, автоматизация не запустится[2].
- При обработке больших диапазонов учтите лимиты: запрос и ответ — до 5 МБ, диапазон — до пяти миллионов ячеек[1].
- Если нужен доступ к файлам на диске или к другим программам, этот инструмент не подойдёт: он видит только книгу[2].
- В Teams запуск работает только в веб-версии Teams[1].
Коротко: такая автоматизация не подойдёт при личной подписке Microsoft 365, на iPhone, для запуска по событию изменения ячейки и для работы с файлами на компьютере. Отличия Excel в браузере от настольной программы собраны на странице о версиях Excel для Mac и браузера, а соседние темы — среди всех уроков тренажёра по автоматизации в облаке.
Частые вопросы
Почему в Excel нет вкладки Automate?
Вкладки Automate нет, если лицензия не входит в список для Office Scripts или в браузере отключены сторонние файлы cookie[1]. В Windows также проверьте, что установлен WebView2[6].
Можно ли запускать сценарии с личной подпиской Microsoft 365?
Нет, запускать сценарии с личной подпиской не получится: справка перечисляет только коммерческие и учебные лицензии — Business, ProPlus, A3, A5, E1, E3, E5, F3[1]. Для личной подписки остаётся VBA в настольном Excel.
Чем сценарий отличается от макроса VBA?
Сценарий отличается тем, что работает в Excel в Интернете, запускается из Power Automate и видит только книгу[2]. Макрос VBA работает лишь в настольном Excel, зато получает доступ ко всему компьютеру.
Как запустить скрипт по расписанию?
Чтобы запустить скрипт по расписанию, создайте поток в Power Automate с нужным триггером и добавьте в него действие Run script с выбранным сценарием[1]. Учтите лимит — 1 600 вызовов в сутки на пользователя[1].
Когда запуск из потока прервётся?
Обработка прервётся, если синхронная операция потока длится дольше 120 секунд или ответ превышает 5 МБ[1]. Разбейте её на части или уменьшите диапазон.
Источники
- [1] Microsoft, справка «Platform limits, requirements, and error messages for Office Scripts» (английская версия), 2026
- [2] Microsoft, справка «Differences between Office Scripts and VBA macros» (английская версия), 2026
- [3] Microsoft, справка «Fundamentals for Office Scripts in Excel» (английская версия), 2026
- [4] Microsoft, справка «Office Scripts in Excel» (английская версия), 2026
- [5] Google, справка «Automate tasks in Google Sheets» (английская версия), 2026
- [6] Microsoft, справка «Introduction to Office Scripts in Excel» (английская версия), 2026
- [7] Microsoft, справка «Record your actions as Office Scripts» (английская версия), 2026