Google Таблицы
58.3K subscribers
425 photos
121 videos
4 files
772 links
Работа в Google Таблицах. Кейсы, решения и угар.

контакты:
@namokonov
@r_shagabutdinov
@IT_sAdmin

оглавление: goo.gl/HdS2qn
заказ работы: teletype.in/@google_sheets/sheet_happens
чат: @google_spreadsheets_chat
Download Telegram
Google Таблицы
Персональная техподдержка компаний от @google_sheets Друзья, привет! Наша новая услуга – внедрение нашей команды (автор канала Евгений и его спецы) в ваш бизнес для помощи по Таблицам и GAS-скриптам. 💥Как это выглядит Мы создаём чатик, вы добавляете своих…
Что входит в наш пакет поддержки компаний:

1) Разумеется, помощь по формулам, напишем с вами самые сложные и оптимальные, перепишем ваши медленные;

2) Скрипты, пара примеров:

— Сможем связать несколько таблиц в одну, собирать данные и превращать в красивый отчет;

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

— Сможем создавать Google Документы / Word файлы со счетами из данных Таблиц;

3) Интеграции со внешними API, пример: торгуете на озон и ВБ: сможем настроить скрипты так, чтобы данные о ваших остатках, продажах и заказах попадали сразу в Таблицу, также сможете менять цены и описание товаров из Таблицы

4) Телеграм боты, полезные для вашего бизнеса:

— Сотрудник работает на полях? Сделаем бота для удобной отправки данных прямо в Таблицы / базу данных BQ;

— Менеджменту нужно отслеживать KPI в режиме реального времени? Настроим бота, который будет отправлять сообщения в чаты, когда выбранные метрики в Таблицах выйдут за установленные рамки;

— Бот, который мы делали для компании DiDI: пользователь садится в такси, быстро находит через поиск номер а/м и отвечает на ряд вопросов по водителю и по поездке (в моменте ботом пользовались 100 человек), все отправляется и в Таблицу и в BQ;

...
Друзья, это просто примеры того, что можно сделать. Когда мы говорим "Таблицы", то подразумеваем не только формулы, пускай даже самые сложные, Таблицы – площадка, на которой можно развернуть любые скрипты, сделать веб-приложение и получить действительно большую пользу для своего бизнеса. Это не курс от коуча, который вас научит как "зарабатывать" деньги, это действительно полезные интеграции, которые мы можем внедрить у вас.

Если остались вопросы по пакету, пишите @namokonov, обсудим.

Сколько все стоит и какие условия
Обращаемся к Телеграм и достаём

Друзья, мы к вам опять с подарками: Таблица и скрипт, который достаёт по юзернейму канала в Телеграме ссылку на последний пост и сам этот пост, его просмотры и ссылку на изображение в посте.

Всё просто, делайте копию Таблицы, вводите юзернеймы каналов в A2:A и запускайте скрипт из меню.

Это уже третий наш пост про то, что можно достать из Телеграм, два предыдущих:

Достаём скриптом количество подписчиков чатов и каналов в Телеграм

Достаём из телеграм каналов посты и просмотры
Forwarded from Магия Excel
А вот еще одна новинка, но несопоставимого масштаба... код Python будет работать прямо в Excel!

Пока все только начинается — с бета-каналом обновлений группа Python не появилась сама, ее можно добавить как на скриншоте — через параметры ленты инструментов. Но все равно ничего еще не работает.

Работать будет прямо в ячейках — можно будет начинать ввод с =PY в формуле или через ленту инструментов.
А вычисления будут производиться в облаке. То есть будет нужен доступ к сети.

Для ссылок на объекты (ячейки и диапазоны, данные в "умных" таблицах) Excel будет использоваться функция Python xl().

Ссылки:
Официальная новость
Общие сведения о Python в Excel
Начало работы с Python в Excel
Python in Excel (на странице дистрибутива Anaconda)
Выведем, когда и кем менялся конкретный файл на Google Диске сегодня

Друзья, опять мы к вам с подарками и с простым скриптом.

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

Чтобы скрипт заработал не забудьте добавить Drive Api в сервисах в редакторе скриптов:

function main() {
const dt = new Date(new Date().setHours(0,0,0,0));
const url = 'https://docs.google.com/...';
Logger.log(listFileRevisions(url).filter(x => x[1] >= dt));
};

function listFileRevisions(file) {
return Drive.Revisions.list(file.match(/[-\w]{25,}/)[0])
.items.map(revision => {
return [
revision.id,
new Date(revision.modifiedDate),
revision.lastModifyingUserName,
revision.lastModifyingUser.emailAddress,
];
});
};
Media is too big
VIEW IN TELEGRAM
@zadavai_vopros_bot

Опыт использования нашего ИИ-бота от Веро - пишем текст для регулярной рассылки.

Да-да, поздравления с 23 февраля и 8 марта для коллег вы тоже сможете писать с помощью ИИ и даже в «стихах» :)

Про бота / Пишем ботом простые скрипты / Отвечаем ботом на отзывы / Работа с текстом
КопиПастер от Александра

Друзья, сегодня Таблица с простым скриптом с сайдбаром от Александра, слово автору:

Написал для работы простую, но удобную программку. Может кому тоже пригодится. Смысл такой: юзер добавляет в колонку дежурные фразы, которые ему приходится часто отправлять по почте, в чатах, в ТМС и т.д. Чтобы каждый раз не писать много текста, можно один раз эти фразы написать в таблице. Они списком попадают в сайдбар, откуда их можно отредактировать, если надо и скопировать в буфер кнопкой. Казалось бы ерунда, но может сэкономить кучу времени в рутинной работе.

PS Ну понятно, что скрипт не наш, мы бы это назвали "вставлятор" 😅

--
продаём разные скрипты для маркетплейсов, к примеру - загружаем статистику по рекламным кампаниям и в озоне и в ВБ скриптами и в Таблицу (пишите @namokonov)
Forwarded from Renat Shagabutdinov
Media is too big
VIEW IN TELEGRAM
Вычисляемое поле в сводной: умножаем сумму на одно значение

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

По умолчанию у нас будут суммироваться все значения всех полей.
То есть при такой формуле:
=Продажи*Цена
В рассчитываемом поле в сводной просуммируются все продажи (в том контексте, который задан в строках и столбцах сводной) и все цены, и на выходе будет произведение этих двух сумм. Многовато!

А нам надо:
= Все продажи * одна цена

В таком случае выбираем в редакторе сводной в рассчитываемом поле "Суммировать по:" — "Другое".
И тогда мы получим только первую продажи и только первую цену.
Добавляем к полю с продажами (тому, которое нужно суммировать) функцию SUM / СУММ и будет нам счастье.
=СУММ('Поле, которое суммируем') * 'Поле, которое не суммируем'

Для любителей видео — пара минут со звуком.

P.S. В Excel такую задачу можно решить, построив сводную на основе модели данных и потом создав меру с функцией SUMX, которая обрабатывает данные построчно.
Друзья, присылайте нам (контакты в профиле) ваши материалы про Google Таблицы, скрипты и интеграции вокруг. То, что будет интересно нашей аудитории - будем выкладывать. А с нас – плюшки :)

А сегодня пост от нашего подписчика @ramathethird, даём ему слово:

-
🤖 Представляем вам готовое решение для возможности развернуть своего Telegram бота с технологией оптического распознавания символов (OCR)!

С помощью этого кода вы сможете создать бота, который будет распознавать текст на изображениях и отправлять его обратно вам. И самое лучшее – для работы бота используются только бесплатные сервисы Google!

🔍 Оптическое распознавание символов (OCR) – это технология, которая позволяет распознавать текст на изображениях или сканированных документах. С ее помощью можно автоматизировать процесс распознавания текста и сэкономить время.

📝 Для разворачивания бота необходимо выполнить следующие шаги:

1️⃣ Создайте новый Telegram бот.
2️⃣ Получите api-токен вашего бота.
3️⃣ Скопируйте себе данный standalone script.
4️⃣ Опубликуйте скрипт как веб-приложение (от лица своего аккаунта и для всех, если не понятно — вот видео) и скопируйте URL.
5️⃣ Заполните переменные botToken, webAppUrl, folderId.
6️⃣ В разделе "Сервисы" добавьте "Drive API" (если не добавился при копировании).
7️⃣ "Взведите" бота с помощью функции setWebhook().
8️⃣ Отправляйте боту изображение с текстом для теста.

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

⚠️ Важно отметить, что технология оптического распознавания символов (OCR) не всегда может быть 100% точной. Некоторые факторы, такие как качество изображения, шрифт, язык и другие факторы могут повлиять на точность распознавания текста. В результате могут возникать неточности или ошибки в распознанном тексте.

При использовании этого кода и технологии OCR рекомендуется учитывать возможность возникновения неточностей и проверять результаты распознавания перед их использованием.

НАШ ЧАТ, про Таблицы и скрипты
Проверка данных (Data validation) с формулами

Если вам не хватает готовых решений в проверке данных (проверка на числа, даты, вхождение символа/слова в текстовую строку, соответствие адресу электропочты) — пользуйтесь вариантом "Ваша формула" и создавайте свои собственные правила проверки.

Принцип здесь такой же, как и с использованием формул в условном форматировании: вы пишете формулу для первой ячейки диапазона, к которому применяете правила, и используете абсолютные и относительные ссылки ($). Представляйте, что вы вводите формулу прямо в первую ячейку диапазона проверки и потом будете ее "протягивать". Проверка данных будет запрещать ввод везде, где формула будет возвращать ЛОЖЬ / FALSE.

Примеры правил
Только
уникальные значения
=СЧЁТЕСЛИ(диапазон;ячейка со значением)<=1
Проверка будет ругаться, если введенное значение уже встречалось в столбце A.

Только рабочие дни:
=ДЕНЬНЕД(первая ячейка;2)<6
Проверка будет ругаться, если номер дня недели у введенной даты - 6 или 7, то есть это суббота или воскресенье. Напомним, что у ДЕНЬНЕД / WEEKDAY нужно указать второй аргумент = 2, именно такой тип нумерации соответствует привычному для нас (где понедельник = 1).

Текст не длиннее 8 символов:
=ДЛСТР(первая ячейка)<=8
Здесь проверка будет ругаться, если вы ввели более 8 любых символов.

Только формулы:
=ISFORMULA(первая ячейка)

Таблица с примерами

Наш чат про Таблицы и про скрипты: @google_spreadsheets_chat
Выделил в Таблице – отправилось в Телеграм

Привет, друзья! Ну что, очередной вариант отправки из Таблиц в Телеграм чаты или каналы. Точнее, очередной скрипт.

Скрипт работает так: выделяете диапазон, в котором в первом столбце chatId (уникальный Id пользователя или чата в телеграм, узнать можно с помощью @myidbot), а во втором столбце текст, который мы хотим отправить.

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

ПС не забудьте внести токен своего бота в редактор скриптов.

Таблица
Добавляем таблицам огонька: пользовательские числовые форматы

Друзья, хотим напомнить вам про нашу таблицу — нарядную, бесплатную и с огоньками — с примерами пользовательских форматов.

Там всякое:
— прячем нули или вообще все значения
— добавляем к числам смайлы, стрелочки или текст
— форматируем даты или телефонные номера
— и другое — примеры на все возможности форматов.

Таблица

Другие наши посты по теме:
Статья про пользовательские форматы
Видео

⭐️ Оглавление канала: ты-дыц
Превращаем строку с числами в спарклайн одной формулой

Друзья, сегодня простая формула с превращением ряда чисел из одной текстовой строки в спарклайн одной формулой — спасибо нашему чату за идею.

В A1 на скриншоте — значения, разделенные запятой. Превратим их в спарклайн (диаграмму в одной ячейке). Используем формулу:

=SPARKLINE(SPLIT(A1;",");{"charttype"\"column";"color"\"green"})

С помощью SPLIT с запятой в качестве разделителя (второй аргумент функции) делим нашу строку на отдельные числа, далее превращаем всё это в спарклайн типа "гистограмма" (столбики) "charttype"\"column", а "color"\"green" отвечает за цвет столбцов, green сможете поменять на нужный вам цвет. Можно использовать и шестнадцатеричные коды цветов.

Другие наше про спарклайны:
Спарклайн с условием \ Видеоурок: Синтаксис и примеры \ Что такое спарклайны? \ Динамический спарклайн
Курсы по Excel и Google Драйву

Друзья, несколько новостей по табличным курсам в МИФе

Во-первых, добавил новые видео и модули в эти курсы:
- В оба курса — модуль про функцию LAMBDA и вспомогательные функции BYROW/ BYCOL, SCAN и REDUCE, MAP и ISOMITTED (последняя в Excel). В случае с Гугл Драйвом — отдельное видео про именованные функции в Google Таблицах.
- Видео про ПРОСМОТРX / XLOOKUP в Google Таблицах — добавлено некоторое время назад, благо функция там появилась вскоре после Excel. В курсе про Excel эта функция и так, разумеется, была.
- Большое видео про Power Pivot (модель данных) в Магии Excel будет скоро.

Во-вторых, с 1 ноября цена на оба курса вырастет. Так что если думали про то, чтобы изучить основательно ту или иную тему или обучить свою команду/компанию (а на этих курсах у нас учатся сотрудники самых разных компаний, включая компанию из топ-10 крупнейших в России и национальный исследовательский университет) — самое время брать курс по старой цене с новыми материалами. Тем более несколько дней будет скидка — см ниже.

Немного фактов.
В каждом курсе есть исходные и заполненные файлы с примерами к каждому уроку, а в отдельных тарифах и подробные конспекты (суммарно как книга).

В Магии Excel 60+ уроков, в Гугл Драйве 90+.

Урокам можно ставить оценки. За все время у Гугл Драйва 600 оценок (из них 7 четверок и 2 тройки), у Магии Excel 245 оценок (тоже почти все пятерки: только 4 четверки, ни одной тройки).

Коллеги подкинули промокод на скидку, ловите:
GOOGLE
35% до 5 октября.

https://www.mann-ivanov-ferber.ru/courses/magicexcel/
https://www.mann-ivanov-ferber.ru/courses/gdrive/
Простое. Вопрос из чата: "кто подскажет, как из строки вывести четвертое по счету слово в другой столбец?"

Подсказываем. Используем функцию SPLIT и делим строку по пробелу на отдельные слова. Далее используем INDEX и берём четвертое слово.

=INDEX(SPLIT(W3;" ");4)

Либо тоже самое, но с новой функцией выбора столбца, который хотим оставить. Про новые функции.

=CHOOSECOLS(split(W3;" ");4)

Двигаем время формулами

💥 заказать работу | наш "пакет поддержки компаний"
Задание для подписчиков:

Галатасарай завтра выиграет в Лондоне Манчестере...

Задача: распределяем команды по группам с учетом дополнительного условия

Друзья, сегодня хотим предложить вам не решение, а задачу.
Мы недавно писали про случайное распределение команд по группам с помощью SORT, WRAPCOLS и RANDARRAY. Из столбца A (слева на скриншоте) получали одной формулой (она в оранжевой ячейке) то, что справа.

Усложняем задачу!
Сможете одной формулой формировать случайные группы по 4 команды так, чтобы (и в этом отличие от первоначальной формулы) в одной группе не было команд из одной страны? Все как в настоящей Лиге чемпионов (тут любители футбола загрустят, вспомнив, что это последний год, когда этот турнир проходит в текущем формате с группами😿)

Страны указаны в столбце B. Делайте копию таблицы и присылайте варианты в комменты! Потом опубликуем подборку решений :)

https://docs.google.com/spreadsheets/d/15QY8X7kfse7HoYbYqo_Th2-qtjMx8BZjlJNftbCfNG8
Фокусы над временем

Друзья, есть столбец с датой и временем, A3:A20.

⚡️ Чтобы оставить только время, используем формулу:
=ARRAYFORMULA(A3:A20 - INT(A3:A20))

⚡️ Чтобы округлить до получаса:
=ARRAYFORMULA(ROUND(C3:C20*48)/48)

Откуда 48? 1 – это 24 часа, чтобы округлить до часа: время * 24, округляем результат до целых и делим на 24. Для округление до получаса используем 48, как аргумент, до двадцати минут – 72 и так далее.

⚡️ Впрочем, до часа можно округлить проще, просто возьмем час от каждой строки:
=ARRAYFORMULA(HOUR(A3:A20))

А зачем нам все это мы вам покажем в следующих постах. Ждите :)

дата и время в Google Таблицах
Не зря они используют шары с названиями команд для жеребьевки... а не Google Таблицы

Да, задача со случайным распределением команд по группам так, чтобы в группе не было команд из одной страны, оказалась непростой. Но некоторые из вас нашли решение и поделились под постом с задачей — выносим их в отдельную таблицу! Спасибо всем за участие!
Плюс одно решение от нас.

Вот таблица со всеми работающими решениями:
https://docs.google.com/spreadsheets/d/15CYM9j0U2RpPciQBK62Nzd5cqxlcfQ1QAGv1F9_Aksk

Мы протестировали их на существующих данных (реальному составу участников ЛЧ этого года) — все отработали корректно.
А также на измененных данных, где из одной страны аж 8 команд. С такой структурой сработали решения 1,2 и 4. Но в любом случае столько команд из одной страны в ЛЧ не участвуют, это уже за рамками задачи :)

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

P.S. И красивая таблица со сравнением решений, их авторами, формулами для проверки каждого решения и оценкой длины формул / числа функций в каждой — от Леонида (одно из решений — самое короткое — тоже его) 🔥
https://docs.google.com/spreadsheets/d/1VoxfzY6LmL01KTmAXh2G2OSqUXBsS-94oXkPnwxXpwk/edit#gid=0
Выделяем на диаграмме текущий месяц

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

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

Этот столбец будет вторым рядом данных - который будет "поверх" основного, и это будет выглядеть как выделение отдельных точек/периода. Этот ряд можно сделать с большим контуром и более ярким цветом.

Формула в общем виде
=ЕСЛИ(условие, по которому выбираются точки для выделения;значение из столбца с данными;"")

Например, если мы выделяем текущий месяц на диаграмме:
=ЕСЛИ(МЕСЯЦ(СЕГОДНЯ())=месяц в этой строке;значение в этой строке;"")

Таблица с примером
Несколько лайфхаков для работы в Google Workspace

Клавиша S на Диске: делаем файл или папку помеченными (Starred) — после этого всегда будет под рукой, собственно в "Помеченных" (по сути это избранное)

— Горячие клавиши и ссылки для создания новых таблиц/документов в интерфейсе Google Диска: Shift+F — папка; Shift+S — таблица; Shift+T — документ; Shift+P — презентация

— Голосовой ввод в Документах (Ctrl + Shift + S)

Ссылка на слайд/заголовок/закладку/фрагмент таблицы. Добавлять в Избранное / на панель закладок в браузере документ или презентацию сразу в нужном месте / на нужном слайде

Отвечать на комментарии можно прямо в почте, не открывая документ/таблицу — в письме с уведомлением о комментарии