Как сделать кнопку в гугл таблице

Добавил пользователь Дмитрий К.
Обновлено: 29.08.2024

Скрипты google для автоматизации, создания документов, мини CRM.

воскресенье, 21 июня 2020 г.

Таблицы google имеют достаточно большие возможности в построении различного рода CRM. Пользуясь не только формулами, но и скриптами, можно достаточно быстро выстроить модель обработки различного рода данных.

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

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

Во-первых, мы добавили своё меню с одним пунктом Создать лист. Во-вторых, используя методы Browser создали дополнительную проверку для пользователя. И новый лист будет создан только если пользователь подтвердит и нажмёт Да.

Методы Browser ограничены оповещением и набором кнопок. Было бы гораздо лучше если бы при создании нового листа мы могли бы задать его название.

При запуске данной функции будет запрашиваться название нового листа и при нажатии кнопки Ок будет вставляться новый лист и переименовываться.

На этом возможности Browser заканчиваются, а нам очень бы хотелось организовать ввод данных клиентов с помощью этакой формы со множеством полей:

Я думаю, что очень многие из Вас умеют пользоваться Excel 'ем или его аналогом, а некоторые, может, даже и гугловскими таблицами, про которые писали здесь.

Те, кто пользуется диском Google (Google Drive ), наверное уже использовали Таблицы (Spreadsheets ) и заметили, что по функционалу они немного уступают Экселю, но тем не менее это всё ещё мощный инструмент.

Так вот, в Экселе были макросы (этакие команды, упрощающие и автоматизирующие вычисления) , написанные на небезызвестном языке VBA (Visual Basic for Applications) . В Таблицах Google также есть макросы, которые именуются скриптами и пишутся уже на языке Javascript . С ними мы сегодня и познакомимся.

Я заранее Вас предупреждаю о возможной сложности дальнейшего примера, т.к. он не столько обучающий, сколько.. Мм.. Так сказать, конечный факт, которым Вы можете пользоваться и.. И развивать, если это Вам знакомо.

Соберитесь в комочек мозга.. И приступим :)

Создание таблицы Google Drive / Scripts и наполнение её контентом

Рассмотрим такую простенькую задачку:
У нас есть две колонки, в первой мы пишем названия фруктов, а во второй цвет, который соответствует этому фрукту. И мы хотим, чтобы при вводе цвета в колонке цветов автоматически менялся бы цвет названия фрукта.

Если Вы забыли как вообще пользоваться документами Google , то милости просим почитать соответствующую и уже упомянутую выше статью. Если Вам это не нужно совсем, то читать наверное и дальше даже нет смысла. Хотя, конечно, кому что :)

Так вот, создаем новую таблицу Google , именуем её, например, " Фрукты ". Ну, как, например.. Учитывая, что пример про фрукты, то.. Ну Вы поняли :)

Теперь добавляем на первый лист наши фрукты и цвета:

Примечание! Для того, чтобы считались фрукты, введите в ячейку А1 формулу:

="фрукт ("&COUNTA(A2:A)&")"

Теперь создадим макрос. Для этого идем в меню " Инструменты " и выбираем " Управление скриптами ". Появится всплывающее меню, где мы жмем на кнопку " Создать ".

создание макроса - Google Docs, Google Drive, Google Scripts: как писать скрипты, макросы и код - скриншот 2

В появившемся окошке выбираем " Пустой проект ".

создание скрипта - Google Docs, Google Drive, Google Scripts: как писать скрипты, макросы и код - скриншот 3

Откроется редактор, который на первый взгляд (да и на второй) может вызвать ступор.

Собственно, что дальше? А дальше мы начинаем писать наш собственный макрос ручками (да, всё самостоятельно). Как будет выглядеть наш макрос? Нужно составить схемку сего процесса (иначе этот процесс займет у Вас очень много времени).

  1. Достать значения цветов из второй колонки;
  2. В соответствии с этими значениями задавать цвета для первой колонки.

Итак.. Вроде бы всё просто.. Если знать, как это делать, конечно :)

шКоддинг

Перейдем к самому коду:

Теперь я постараюсь Вам его объяснить. Функция onOpen добавляет меню " Скрипты " к таблице при открытии оной. И выглядит это дело так:

Эта строчка добавляет в переменную sheet идентификатор открытого нами документа, чтобы потом по нему обращаться к документу.

Эта переменная-массив содержит список названий менюшек и функций, которые выполняются при клике на эти менюшки.

Этот метод добавляет к нашему документу меню " Скрипты ".

Функция MakeMeHappy, собственно, и будет нашей главной функцией, которая красит фрукты.
Сначала я объявляю переменные:

Соответственно, в переменной sheet находится идентификатор нашего документа. В переменной range находится выделенная нами область (например, ячейки B2:B6 ), в переменной data находятся значения этих ячеек в виде массива.

В этом условии мы проверяем, что выбранный диапазон ячеек соответствует второй колонке (в которой цвета фруктов).

В этом цикле мы проходимся по каждой ячейке из диапазона B2:B

Эти три свойства убирают форматирование ячеек A[i] (например, A1 , A2 , A3 и т.п., т.к. мы внутри цикла), а также центрируют значения в ячейке по вертикали и горизонтали.

Тут следует иметь в виду, что т.к. наш диапазон соответствует второй колонке ( В2:В ), а нам надо убрать форматирование и отцентровать первую колонку, то для этого используется метод offset (номер ряда диапазона, номер колонки, кол-во рядов, кол-во колонок). Например, метод range.offset(0 ,1,4,3) для ячейки B2 (т.е. range соответствует B2:B2 ) будет означать, что мы будем воздействовать не на ячейку B2:B2 , а на диапазон [ B + 1 ][ 2 + 0 ]:[ В + 3 ][ 2 + ( 4 -1) ] = C2 : E5 . Более подробно сморите в документации.

Функция switch является так называемым переключателем. Она смотрит значение переменной и в соответствии с тем, что в ней хранится, выполняет определенное условие " case ". Можно её переписать в стандартном виде if else . Но получится очень неудобно. Например:

..Будет эквивалентно функции:

Т.к. можно ввести цвет как с большой, так и с маленькой буквы, то нам надо по два условия, что соответствует записи case "зеленый": case "Зеленый": действие; break; (у меня это записано блочной структурой) . Нужно иметь в виду, что после каждого действия надо писать функцию break ; т.к. иначе мы будем выполнять все условия по порядку, а не то, которое нам надо. Условие default используется в том случае, если для нашей переменной нет подходящего условия.

Теперь проверим функцию. Выделяем диапазон B2:B9 , заходим в меню " Скрипты " и выбираем опцию " Покрасить ". Смотрим, как наши фрукты обрели жизнь цвета :)

В общем-то на этом всё. Но не совсем.

Скрипты и макросы таблиц Google, дополнение

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

Для этого зайдите в редакторе скриптов в меню " Ресурсы " и выберите там " Триггеры текущего проекта ". Откроется менюшка, в которой уже будет наша функция onLoad . Добавляем новую функцию (1 ) и задаем название функции (2 ) и тип активации оной (3 ). Также можно нажать на " Уведомления " и добавить/убрать свой почтовый адрес из списка уведомлений.

Они будут приходить в случае, если скрипт выполнялся с ошибками.

добавление триггеров - Google Docs, Google Drive, Google Scripts: как писать скрипты, макросы и код - скриншот 6

Конечный результат действа:

Послесловие

Поздравляю с первым скриптом. Это лишь малая доля того, что можно сделать при помощи такого мощного устройства, как Google Scripts . Понятно, что наверное большинство читателей такая штука пугает, тем более, что другие статьи не так суровы и "ругаются" на Вас кодом, да и прочими ужасами жизни.. Но что уж делать.

Как и всегда, будем рады вопросам и всему такому прочему в комментариях. Следующая часть этого материала, более детально обучающая процессу, теперь обитает по этой вот ссылке, а следующая по этой.

Продолжения раз-два-готовим и три. Ну и комментарии конечно содержат много вкусного.

P.S. За существование оной статьи отдельное спасибо другу проекта и члену нашей команды под ником “barn4k“.

Белов Андрей (Sonikelf) Заметки Сис.Админа [Sonikelf's Project's] Космодамианская наб., 32-34 Россия, Москва (916) 174-8226

У меня есть лист Google с 5 столбцами, в каждом столбце мне нужна кнопка (с текстом 1,2,3,4,5 ).

И при каждом нажатии кнопки мне нужно установить текст кнопки в соответствующую ячейку и скрыть нажатую кнопку.

Возможно ли это?

Вы можете вставить изображение, похожее на кнопку. Затем прикрепите к изображению script.

Insert Image

Вы можете вставить любое изображение. Изображение можно редактировать в электронной таблице

Edit Image

Image of Button

Назначьте имя функции изображению:

Assign Function

Рассмотрим создание надстройки, в котором есть фактическая кнопка, и не используется устаревший метод связывания изображения с функцией script.

В редакторе script в меню "Справка" -> "Экран приветствия" -> ссылка на надпись Google Таблицы - даст вам пример кода для использования.

Можно вставить изображение в электронную таблицу Google с помощью Google Apps Script. Тем не менее, изображение должно быть размещено публично через Интернет. В настоящее время невозможно вставить частные изображения с Google Диска.

Вы можете использовать следующий код для вставки изображения через Script.

Вышеприведенный пример был скопирован из этой ссылки. Ответьте на noogui для получения более подробной информации.

Если вам нужно вставить изображение с Google Диска, проверьте эту ссылку для текущих обновлений.

  • Онлайн-сервис Google бесплатный.
  • Удобно реализована совместная работа — не надо тысячу раз пересылать друг другу файлы.
  • Изменения сохраняются автоматически.
  • Есть история версий — при необходимости можно откатить на тот момент, с которого все пошло не так.
  • Можно настроить автоматический импорт данных из сторонних источников — сервисов аналитики, рекламных кабинетов, кол-трекинга и т. д.

Начало работы с Google Sheets

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

При наведении на плюс появляются две иконки — создать пустую таблицу и выбрать шаблон

Перемещаем таблицу в нужную папку

Google Sheets поддерживает таблицы Excel. Открыть такой файл в сервисе можно двумя способами:

Можно просто перетащить файл Excel из открытой папки на компьютере

Сложные таблицы со множеством формул, графиков и диаграмм при переносе в другой формат могут открываться некорректно. Загрузив файл в Google Sheets или скачав в Excel, проверьте, чтобы все отображалось и работало правильно.

Панель инструментов Google Sheets

В сервисе Google этот элементы выглядит проще, чем в Excel. Однако, если вы привыкли работать с программой MS Office, понадобиться время, чтобы привыкнуть.

Кратко пройдемся по инструментам на панели. О некоторых из них мы поговорим подробнее позже, в соответствующих разделах.

  1. Отменить и повторить последнее действие, распечатать документ, скопировать форматирование. Последний инструмент удобно использовать, когда нужно применить одинаковое форматирование к нескольким ячейкам. Выберите ячейку, кликните по инструменту на панели, а затем — по ячейке, которую надо отформатировать.
  2. Изменить масштаб. Делает таблицу крупнее или мельче, диапазон — от 50 до 200 %.
  3. Изменить формат данных в ячейках — выбрать денежный или процентный, увеличить и уменьшить количество знаков после запятой в числовом, выбрать другие форматы в выпадающем меню.
  4. Шрифт.
  5. Размер шрифта.
  6. Форматирование текста — начертание, цвет текста и фона.
  7. Форматирование ячеек — заливка цветом, границы, объединение.
  8. Выравнивание текста — по-горизонтали, по-вертикали, настройки переноса и поворота.
  9. Прочие инструменты:
  • добавить ссылку;
  • добавить комментарий;
  • вставить диаграмму;
  • создать фильтр;
  • использовать функции.
  1. Отображение листа и направления ввода.
  2. Способ ввода — здесь можно включить экранную клавиатуру и поле для рукописного ввода.
  3. Скрыть меню — по клику на стрелку справа главное меню вместе с заголовком таблицы, настройками доступа и иконкой аккаунта убирается. Остается только панель инструментов.

Операции с ячейками, строками и столбцами

При удалении ячейки, нужно выбрать, куда смещать данные — влево или вверх

Как закрепить строки

Можно закрепить одну, несколько или все строки до текущей

Как перемещать элементы таблицы

Открываем историю изменений в Google Sheets

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

Также можно задать название версии, чтобы потом было проще искать ее в истории

По клику программа создаст копию таблицы в том виде, в котором вам нужно.

Совместный доступ

Лайфхак: если в таблицах вы ссылаетесь на чужие сайты и не хотите, чтобы содержимое файла увидели посторонние, не открывайте доступ по ссылке. Владельцы сайтов, на которые вы ссылаетесь, могут получить ссылку на файл из отчетов по источникам переходов, и открыть его.

Как удалить и восстановить таблицу

Удаляем текущую таблицу

Как редактировать Google Sheets

Чтобы внести данные в таблицу, просто установите курсор на ячейку и начинайте вводить с клавиатуры. Перемещаться по листу можно с помощью мыши, стрелок и горячих клавиш — о них подробнее в конце статьи. Чтобы отредактировать данные в ячейке, кликните по ней два раза, нажмите Enter или поставьте курсор в нужное место в строке формул.

Как защитить данные от редактирования

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

Предупреждение о редактировании защищенного диапазона

Комментарии и примечания

Форматы данных

Данные — текст и цифры, которые вы вносите в таблицу, могут отображаться в разных форматах. Вариантов представления данных несколько десятков, но все их можно свести к 7 основным:

  • текст;
  • число;
  • процент;
  • финансы;
  • валюта;
  • дата;
  • время.

Условное форматирование данных

  1. Укажите диапазон.
  2. Задайте условия форматирования.
  3. Настройте формат — цвет и начертание текста, заливку ячейки.

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

Вы ведете контекстную рекламы и выгружаете в таблицы показатели для анализа эффективности. Чтобы вычислить малоэффективные объявления, нужно отыскать строки с CTR менее 1 %. Создайте правило для соответствующего столбца, по которому ячейки со значением меньше единицы будут подсвечиваться цветом.

Ячейки со значением менее 1 % залиты красным

Градиент пригодится, когда нужно, например, визуализировать отклонение данных в большую и меньшую сторону от оптимального значения.

Фильтры и сортировка

Сортировка. Вверху выпадающего списка находятся кнопки для быстрой сортировки листа в прямом или обратном алфавитном порядке по столбцу с выделенной ячейкой. Числовые значения отсортируются от меньшего к большему и наоборот соответственно.

Сортировка диапазона данных со строкой заголовка

Фильтры скрывают из таблицы данные, которые сейчас не нужны. Это удобно, когда работаешь с большими массивами — посмотреть публикации по отдельной площадке или типу контента в объемном контент-плане, проанализировать данные по достижению одной цели в аналитическом отчете.

Лайфхак: Если нужно показать другому пользователю данные в том виде, в котором вы их отфильтровали с помощью режима фильтрации, просто включите его и отправьте скопированную ссылку.

Проверка данных

В правом верхнем углу ячеек с неверными данными появятся красные метки, при наведении на которые появляется окно с пояснениями.

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

Сводные таблицы

Сводные таблицы — это популярный инструмент анализа данных. Пригодится, когда нужно структурировать и представить в наглядном виде большие массивы информации, чтобы было удобнее делать выводы.

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

Самым прибыльным в моем гипотетическом салоне красоты оказалась реклама в Google Ads

Мы делаем ставку на омниканальность – занимаемся комплексным продвижением бизнеса в интернете. Подробнее

Для визуализации данных существуют более функциональные и удобные инструменты — Google Data Studio, Power BI и другие. Однако иногда бывает полезно добавить диаграмму или график прямо в таблицу, чтобы наглядно представить данные.

Стало нагляднее

Посмотрим, что еще мы можем сделать с диаграммой:

  • перекрасить столбцы, линии, сегменты в один или разные цвета;
  • поменять шрифт, цвет, начертание отдельных элементов или всего текста;
  • изменить фон диаграммы;
  • отредактировать название диаграммы и осей и т. д.

Настроек много, но все они интуитивно понятны.

Созданные в Google Sheets диаграммы можно сохранить как изображение и опубликовать на сайте, встроив в страницу код. Для этого откройте выпадающее меню в правом верхнем углу диаграммы и выберите соответствующие пункты.

Тут же можно переместить график на отдельный лист и добавить альтернативный текст

Работа с функциями

Все функции вводятся по одному принципу:

Рассмотрим на примере простой функции, которую часто используют SEO-шники и специалисты по контекстной рекламе — ДЛСТР — вычисляет длину строки.

Заодно вспомним условное форматирование — красным подсвечены ячейки с числами больше 33

Подробно описывать каждую функцию не будем — их около 400. Скажем лишь, что в с помощью формул здесь можно сделать все тоже самое, что и в Excel. Конечно, там есть формулы, которых нет в сервисе Google, и наоборот, но таких не много. Например, функции GOOGLETRANSLATE, которая переводит текст с одного языка на другой, в Excel нет.

О полезных для интернет-маркетологов функций электронных таблиц MS Office мы уже писали, все они отлично работают в сервисе Google. Принцип работы этих функций тот же, но может отличаться синтаксис. Список всех формул Google Sheets с описанием и синтаксисом есть в справочнике.

Интеграция с другими инструментами Google

Неоспоримое преимущество Google Таблиц для интернет-маркетологов в том, что они могут взаимодействовать и обмениваться данными с другими сервисами Google. Посмотрим на примере двух продуктов — Google Формы и Google Analytics.

Взаимодействие с Google Forms

По клику создается новая таблица с таким же названием, как и у формы.

Интеграция с Google Analytics

Подключаем Google Analytics к Google Sheets

Сырая выгрузка данных из Google Analytics

С полученными данными можно работать — сортировать, фильтровать, обрабатывать с помощью формул и отображать в сводных таблицах.

Полезные дополнения Google Sheets

Дополнения в каталоге можно отфильтровать по категориям

Всего сервис поддерживает более сотни горячих клавиш. Вот несколько самых полезных для Windows:

  • Ctrl + пробел — выделить столбец;
  • Shift + пробел — выделить строку;
  • Ctrl + Enter / D / R — заполнить диапазон / вниз / вправо;
  • Ctrl + K — вставить ссылку;
  • Home — перейти в начало строки;
  • Ctrl + Home — перейти в начало листа;
  • Ctrl + Backspace — перейти к активной ячейке.

Вот мы и рассмотрели ключевые возможности Google Sheets.

Активно пользуетесь Таблицами и знаете хитрости и лайфхаки, которые ускоряют и упрощают работу? Будет здорово, если вы поделитесь ими в комментариях и поможете другим работать эффективнее ;-)

Читайте также: