Открыл для себя Америку в Google Таблицах
Google Таблицы плотно вошли в нашу жизнь. Сегодня сложно найти IT-специалиста, который не сталкивался с этим инструментом. Корпорация Google очень изящно внедрила продукт в жизнь пользователей, буквально «подсадив» на него — теперь это почти как незаменимый инструмент.

Почему большие компании выбирают Google Sheets?
Я наблюдал за крупными компаниями с числом сотрудников от одной до десяти тысяч, где в ключевых отделах Google Таблицы стали core-инструментом для работы, синхронизации и решения повседневных задач. Картина одновременно интересная и настораживающая: вместо разработки собственных CRM-систем компании предпочитают использовать Google Sheets с его невероятной функциональностью.
Признаюсь честно: я сам попался в эту «ловушку» удобства. Google пока не собирается уходить с рынка, но помните о резервном копировании — к счастью, это делается максимально просто.
Три откровения: фишки гугл таблиц
Первое откровение: Apps Script
По сути, это JavaScript, который можно привязать к документу и выполнять практически любые задачи. Подробности можно изучить в официальной документации Google. Анонс функционала был в далеком 2008 году, раскатили на всех пользователей его в 2009. Мы же начали его использовать году в 2015.
Изначально мы использовали Apps Script для извлечения данных из нашей учетной системы. Принцип прост: создаем роут, который возвращает данные в формате JSON, а дальше — дело техники. Можно выводить, обрабатывать и манипулировать информацией как угодно.
Я не силен в написании кода на JavaScript, а тем более в рамках Apps Script. Но вот GPT отлично этим владеет, поэтому если мы в состоянии составить промт с чем чего вы хотите, какие вводные данные — у вас все получиться.

Простенький пример кода

function onOpen()
{
SpreadsheetApp.getUi()
.createMenu('Action')
.addItem('Информация за месяц', 'fetchCSVData')
.addToUi();
weekUpdate();
}
function fetchCSVData() {
var fileUrl = 'link_to_csv';
var response = UrlFetchApp.fetch(fileUrl);
var csvData = response.getContentText();
var rows = Utilities.parseCsv(csvData);
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getSheetByName('YearlyReport2024');
if (sheet) {
spreadsheet.deleteSheet(sheet);
}
sheet = spreadsheet.insertSheet('YearlyReport2024');
// Записываем все данные одним вызовом
sheet.getRange(1, 1, rows.length, rows[0].length).setValues(rows);
// Оптимизация форматирования и производительности
SpreadsheetApp.flush();
}
Данный код добавляет на панель инструментов Google Таблицы новое меню под названием «Action», в котором доступна команда «Информация за месяц». При выборе этой команды выполняется функция fetchCSVData, которая загружает данные из CSV-файла по указанному URL, парсит его содержимое и записывает эти данные в лист под названием ’YearlyReport2024’. Если такой лист уже существует, он сначала удаляется, а затем создается новый.
Внутри функции fetchCSVData осуществляется запрос по URL, получение данных в виде текста, преобразование CSV-строк в двумерный массив и запись полученных данных в новую таблицу. Для улучшения производительности после записи данных вызывается метод SpreadsheetApp.flush(), который гарантирует, что все изменения в таблице будут применены и визуализированы.
Второе откровение: Прямое подключение к базам данных
Второе откровение случилось, когда нужно было получить данные из CRM-системы с базой на MySQL. Разработчики были заняты, срочно сделать роут не представлялось возможным. После консультации с ChatGPT выяснилось, что через Apps Script можно напрямую подключаться к базе данных. Невероятно, но факт! За короткое время мы составили SQL-запрос, и данные уже были в таблице.
Стоит дополнить что можно использовать любой тип файлов — csv, txt, xls. Собираете где это возможно, указываете путь и далее можно работать с данными внутри Гугла.
Третье откровение: Автоматизация отчетности
Раньше мы добавляли кнопку в меню для обновления данных. Теперь используем встроенные триггеры Google, работающие похоже на cron — они выполняют команды по заданным параметрам. Настоящая магия!

Сравнение с профессиональными аналитическими системами
Кто-то может упрекнуть меня в том, что я не упомянул Looker Studio от Google, Яндекс DataLens или ClickHouse. Да, эти инструменты круты и мы их тоже используем. Однако время разработки идентичного функционала несопоставимо.
Конечно, лучше иметь полноценные аналитические системы с красивыми графиками и фильтрами. Но когда нужно решить задачу здесь и сейчас, от быстрого варианта «на коленке» редко кто откажется.