Вы находитесь на странице: 1из 1

Google Apps Script: основные команды для автоматизации Гугл Таблиц

Навигация по классу SpreadsheetApp. Range (диапазон) Cell (ячейка) Триггеры


Spreadsheet (таблица как документ) Sheet (лист) getRange getRange(row, Простые триггеры (на редактирование, пример)
SpreadsheetApp.openByUrl (url) ss.getSheetByName(name) (row,column,numRows,numColumns) column) function onEdit(e) {
ss.getActiveSheet() getRange ( a1Notation ) getRange(a1Notation) var range = e.range,
SpreadsheetApp.openById (id)
SpreadsheetApp.getActive() getActiveRange() getCurrentCell ( ) row = range.getRow(),
SpreadsheetApp.getActiveSpreadsheet() Вспомогательные функции: getRange (row, column, numRows) getActiveCell ( ) column = range.getColumn();
SpreadsheetApp.open(file) sheet.getName() =sheet.getSheetName() Вспомогательные функции: range.offset(0, 1).setValue(new Date().toLocaleString('ru'))}
sheet.getSheetId() range.getSheet() range.getA1Notation() range.getRow() range.getColumn() Перечень объектов: e.range,e.value,e.sourse
Вспомогательные функции: Получить все листы sheet.getLastRow() sheet.getLastColumn() Простые триггеры (на открытие, пример
ss.getUrl() ss.getId() таблицы: ss.getSheets() range.getNumRows() range.getNumColumns() "Создание пользовательского меню")
ss.getName() ss.getFormUrl() sheet.getIndex() sheet.getFormUrl() range.offset(rowOffset, columnOffset)
function onOpen() {
var ui = SpreadsheetApp.getUi();
Основные команды: ссылка на официальную документацию по Google Apps Script
ui.createMenu('МОЁ МЕНЮ')
.addItem('Запустить функцию 1', 'myFunction1')
.addToUi();}
Создать Вставить строки
Копировать
sheet.insertRowBefore ( beforePosition ) Кнопки
Spreadsheet (таблица как документ) sheet.insertRowAfter ( afterPosition ) Spreadsheet (таблица как документ)
sheet.insertRows ( rowIndex ) Вставка → Изображение → Изображение поверх ячеек
SpreadsheetApp.create (name) ss.copy ( name) или Вставка → Рисунок (нарисовать любую фигуру)
sheet.insertRows ( rowIndex, numRows ) дальше одинаково:
Вставить лист sheet.insertRowsBefore(beforePosition,howMany) Лист • • • → Назначить скрипт → Вписать название функции без ( )
sheet.insertRowsAfter ( afterPosition, howMany )
ss.insertSheet ( ) ss.duplicateActiveSheet() Управление триггерами вручную
ss.insertSheet ( sheetIndex ) Вставить столбцы sheet.copyToSpreadsheet(spreadsheet ) Проект Apps Script → Слева "Триггеры" →
ss.insertSheet ( sheetName ) sheet.insertColumnBefore(beforePosition) В правом нижнем углу нажмите Добавить триггер →
ss.insertSheet ( sheetName, sheetIndex ) Добавить строку с контентом
sheet.insertColumnAfter(afterPosition) Выберите и настройте тип триггера → Сохранить
Добавить строку с контентом sheet.insertColumns(columnIndex) range.copyTo ( destination ) Программное управление триггерами
sheet.insertColumns(columnIndex,numColumns) range.copyTo(destination,copyPasteType,
sheet.insertColumnsBefore(beforePosition,howMany) transposed) function createTimeDrivenTrigger() {
sheet.appendRow(rowContent)
sheet.insertColumnsAfter(afterPosition,howMany) range.copyTo ( destination, options ) ScriptApp.newTrigger('myFunction')
.timeBased() .onWeekDay(ScriptApp.WeekDay.MONDAY)
.atHour(9) .create();}
Таблицу Лист Получить/установить значение
Переименовать ss.rename ( name ) sheet.setName ( name ) getValue() - setValue()
Пользовательские функции (пример)
getValues() - setValues()
function kilometersToNauticalMiles ( kilometers ) {
range.getNote - range.setNote (примечания)
var nauticalMiles = kilometers/1.8522;
Удалить Очистить activate () - активировать
return nauticalMiles }
Лист Лист
Скрипт можно записать с помощью макроса: Инструменты → Макросы → Запись макроса
ss.duplicateActiveSheet ( ) sheet.clear ( )
sheet.copyToSpreadsheet ( spreadsheet ) sheet.clearContents ( )
sheet.clearFormats ( ) ДРУГИЕ ПОЛЕЗНЫЕ ФУНКЦИИ:
Удалить строки и столбцы sheet.clearNotes ( ) Отправить письмо: MailApp.sendEmail(recipient, subject, body)
sheet.clearConditionalFormatRules() Отправить событие в календарь: CalendarApp.getCalendarById("ID").createEvent(title, startTime, endTime)
Одну строку sheet.deleteRow(rowPosition) Поисковый запрос: ss.createTextFinder(findText).findNext()
Диапазон
Несколько:sheet.deleteRows(rowPosition, howMany) Перевести текст: LanguageApp.translate(text, sourceLanguage, targetLanguage)
Один столбец: range.clear ( ) range.clearContent ( ) Вывести окно с сообщением:SpreadsheetApp.getUi().alert('message')
sheet.deleteColumn(columnPosition) range.clearFormat ( ) Получить email пользователя сессии: Session.getActiveUser().getEmail()
Несколько столбцов: Получить текущую дату и время: new Date().toLocaleString('ru')
range.clearNote ( )
sheet.deleteColumns (columnPosition,howMany) Узнать, что в переменной: Logger.log ('переменная: '+ х + ', тип: '+ typeof х)
Диапазон ячеек range.deleteCells (shiftDimension) range.clearDataValidations ( )

© проект «Автоматизация без обязательств» 2021