На Google Диске новые горячие клавиши
Старые, более короткие, увы, теперь холодны и не работают.
Например, для создания папки раньше нужно было нажать Shift + F и все.
А теперь Alt + C, а потом F.
Соответственно, для создания новых файлов теперь нужно нажать Alt + C (Control + C), а потом:
Документ — T
Таблица — S
Презентация — P
Форма — O
Переименовать файл или папку раньше можно было просто нажатием клавиши N. А теперь — F2 (или Ctrl + Alt + N).
Добавить в список помеченных (Starred) — раньше S, а теперь Ctrl + Alt + S 🤯 (Command + Option + S).
P.S. А почему поменялось? Добавилась возможность навигации по первым буквам файлов. То есть вводим букву и попадаем к файлу, имя которого начинается с нее.
Старые, более короткие, увы, теперь холодны и не работают.
Например, для создания папки раньше нужно было нажать Shift + F и все.
А теперь Alt + C, а потом F.
Соответственно, для создания новых файлов теперь нужно нажать Alt + C (Control + C), а потом:
Документ — T
Таблица — S
Презентация — P
Форма — O
Переименовать файл или папку раньше можно было просто нажатием клавиши N. А теперь — F2 (или Ctrl + Alt + N).
Добавить в список помеченных (Starred) — раньше S, а теперь Ctrl + Alt + S 🤯 (Command + Option + S).
P.S. А почему поменялось? Добавилась возможность навигации по первым буквам файлов. То есть вводим букву и попадаем к файлу, имя которого начинается с нее.
1🔥15👍10😢7🤩3👎1
Решаем проблему поиска ВПР-ом в трех диапазонах
Допустим, у нас есть три Таблицы и нам нужно найти наше значение сначала в одной, потом, если не нашли, то в следующей, не нашли в следующей - ищем в последней.
Два варианта, вариант олдскульный и классический:
И вариант молодежный и прогрессивный:
Статья про VSTACK и другие модные формулы от нашего Михаила
Допустим, у нас есть три Таблицы и нам нужно найти наше значение сначала в одной, потом, если не нашли, то в следующей, не нашли в следующей - ищем в последней.
Два варианта, вариант олдскульный и классический:
Функция ищет в первом диапазоне, если возвращается NA - в следующим и так далее.
=IFNA(VLOOKUP(A6;A1:B3;2;0);IFNA( VLOOKUP(A6;D1:E3;2;0);VLOOKUP(A6;G1:H3;2;0)))
И вариант молодежный и прогрессивный:
С помощью VSTACK соединяем диапазоны в один и дальше используем один ВПР.
=VLOOKUP(A6; VSTACK(A1:B3;D1:E3;G1:H3) ; 2; 0)
Статья про VSTACK и другие модные формулы от нашего Михаила
2👍56🔥27❤11❤🔥5👌2👎1🤗1
Вот такую задачу решали на практикуме по формулам: выгрузка из реальной жизни, только упрощенная и данные вымышленные.
А проблема с ней в том, что название филиала есть только в заголовках в начале группы строк по нему.
И для нормальной обработки этого безобразия формулами нам нужен столбец, в котором в каждой строке будет название филиала.
Число строк по каждому городу разное, так что за это не зацепишься.
Какие варианты в такой ситуации возможны?
1 Смотреть на первое слово / символы в ячейке. Например, проверять, что первые 6 символов (ЛЕВСИМВ / LEFT) — это "филиал"
2 А если не везде начало со слова "филиал", как в реальной жизни? Там было то "Филиал", то "Центр", то сразу город.
Тогда можно смотреть на следующую строку — если там подзаголовок другого уровня, значит, в текущей строке заголовок по городу. Это решение на скриншоте.
3 Можно смотреть на какой-то из соседних столбцов (B, C и так далее), но не конкретно в этом случае, т.к. здесь эти столбцы пустые и в строках с городами, и в строках с категориями услуг (Основные, дополнительные). Но в каких-то случаях это подойдет, можно будет проверять столбец на пустоту функцией ЕПУСТО / ISBLANK.
А проблема с ней в том, что название филиала есть только в заголовках в начале группы строк по нему.
И для нормальной обработки этого безобразия формулами нам нужен столбец, в котором в каждой строке будет название филиала.
Число строк по каждому городу разное, так что за это не зацепишься.
Какие варианты в такой ситуации возможны?
1 Смотреть на первое слово / символы в ячейке. Например, проверять, что первые 6 символов (ЛЕВСИМВ / LEFT) — это "филиал"
=ЕСЛИ(ЛЕВСИМВ(A2;6)="филиал"; A2; значение сверху)
2 А если не везде начало со слова "филиал", как в реальной жизни? Там было то "Филиал", то "Центр", то сразу город.
Тогда можно смотреть на следующую строку — если там подзаголовок другого уровня, значит, в текущей строке заголовок по городу. Это решение на скриншоте.
3 Можно смотреть на какой-то из соседних столбцов (B, C и так далее), но не конкретно в этом случае, т.к. здесь эти столбцы пустые и в строках с городами, и в строках с категориями услуг (Основные, дополнительные). Но в каких-то случаях это подойдет, можно будет проверять столбец на пустоту функцией ЕПУСТО / ISBLANK.
4👍32❤7🔥4👨💻3👎1🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
Показывает чекбоксы только на строках с данными / снижаем визуальный шум :)
Друзья, привет, представьте - вы выводите диапазон данных и хотите, чтобы слева или справа у вас выстроились чекбоксы по каждой строке выведенного диапазона, но не больше
ПС а еще чекбоксы называют крыжами, слышали про это?
Наш чат, про Таблицы, скрипты и крыжи: @google_spreadsheets_chat
Друзья, привет, представьте - вы выводите диапазон данных и хотите, чтобы слева или справа у вас выстроились чекбоксы по каждой строке выведенного диапазона, но не больше
Как?
1. создаём целый столбец чекбоксов (выделили столбец > вставка > флажок)
2. применяем белый цвет шрифта на этот столбец
3. и создаем правило условного форматирования формулой для этого столбца - если в соседнем столбце есть данные - крась шрифт ячейки со скрытым чекбоксом в черный (смотрите на на гифку)
ПС а еще чекбоксы называют крыжами, слышали про это?
Наш чат, про Таблицы, скрипты и крыжи: @google_spreadsheets_chat
6🔥59👍26👎3❤2💩2🤨2
Forwarded from Eugeny Namokonov
Наша команда уже пять лет работает с маркетплейсами: с ОЗОНОМ, ВБ, Яндекс маркетом
Что мы делаем:
Хотите из Таблицы / Локер Студио видеть все по своей империи - пишите мне, @namokonov, по всеми вопросам
Что мы делаем:
1. выгружаем разные отчеты через API прямо в Таблицу, от остатков товаров (и их можно копить) до заказов / продаж / показателей по вашей рекламе;
2. загружаем данные в маркетплейс, те же остатки ваших складов FBS или новые цены, меняем карточки товаров прямо из Талиц;
3. и все зз удобного интерфейса Google Таблиц. Никаких проблем с доступом нет, если верно соблюдать тайминги и не стучаться каждую наносекунду - всё летает;
4. Средний отчет (обращение к одному API с последующей обработкой, скажем, накоплением заказов по ВБ) у нас стоит 10 000 рублей;
5. Помимо просто выгрузки сырых данных мы можем придумать из них дашборды, которые вам нужны;
6. Ну и конечно, данные можно грузить не только с одного ключа / магазина, а с многих, а если данных много - мы их храним не в Таблицу, а в облачной базе Google Biqquery;
7. Хотите продолжать выгружать отчетики из личного кабинета и как-то сводить с помощью бедных аналитиков - пожалуйста вы им даете работу, мы же, можем свести весь процесс для вас до одной кнопки (или вообще без кнопки, сделать автоматическую загрузку по расписанию);
Хотите из Таблицы / Локер Студио видеть все по своей империи - пишите мне, @namokonov, по всеми вопросам
4👍29🤪3👎2😎1
Google Таблицы
Наша команда уже пять лет работает с маркетплейсами: с ОЗОНОМ, ВБ, Яндекс маркетом Что мы делаем: 1. выгружаем разные отчеты через API прямо в Таблицу, от остатков товаров (и их можно копить) до заказов / продаж / показателей по вашей рекламе; 2. загружаем…
Продолжаем про маркетплейсы или "в поисках идеального дашборда"
У нас очень много клиентов на разработку всякого и точно бОльшая их часть - это продавцы ВБ, ОЗОН, Яндекс Маркета.
Знаете, что мы за годы работы заметили?
Как правило, даже те, кто понял, что нужна автоматизация - приходят без конкретного понимания, какие показатели выводить, как это должно выглядеть в целом и какие решения по всему этому можно принимать в своем бизнесе.
Поэтому давайте вместе придумаем нашу народную Табличку по маркетплейсам, действительно полезную.
Чтобы взгляда на нее хватило, чтобы понять, куда наш корабль плывет, где акулы и рифы, а где сундуки с золотом.
🚨 Исходим из того, что все, что можно загрузить из API маркетплейсов - мы загружаем и превращаем в любой вид.
Поэтому, друзья - отправляйте свои варианты, либо чем сами пользуетесь, либо дашборд мечты, который хотели бы получить для управления своими магазинами (можете макет нарисовать).
Можно скришотами, можно с комментариями по показателями и по решениям, которые по ним будут принматься. Давайте сделаем это
💰 А чтобы вам было интереснее - мы выберем 1-2 человек с лучшими вариантами и сделаем для них похожее бесплатно
У нас очень много клиентов на разработку всякого и точно бОльшая их часть - это продавцы ВБ, ОЗОН, Яндекс Маркета.
Знаете, что мы за годы работы заметили?
Как правило, даже те, кто понял, что нужна автоматизация - приходят без конкретного понимания, какие показатели выводить, как это должно выглядеть в целом и какие решения по всему этому можно принимать в своем бизнесе.
Поэтому давайте вместе придумаем нашу народную Табличку по маркетплейсам, действительно полезную.
Чтобы взгляда на нее хватило, чтобы понять, куда наш корабль плывет, где акулы и рифы, а где сундуки с золотом.
Поэтому, друзья - отправляйте свои варианты, либо чем сами пользуетесь, либо дашборд мечты, который хотели бы получить для управления своими магазинами (можете макет нарисовать).
Можно скришотами, можно с комментариями по показателями и по решениям, которые по ним будут принматься. Давайте сделаем это
💰 А чтобы вам было интереснее - мы выберем 1-2 человек с лучшими вариантами и сделаем для них похожее бесплатно
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍38🔥15❤7🤷♂1👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Ключевая ставка ЦБ РФ на дату - или формула имени Эльвиры Сахипзадовны
Ребятки, привет!
Вот формула:
Формула достаёт значения ключевой ставки ЦБ РФ с сайта с 17.09.2013 (до этой даты данных нет) по сегодняшний день, приводит строки с датой и значением ставки к числовым значениям (формат столбца с датой надо будет задать руками, чтоб красиво отображалось).
Ещё она оставляет только новые значения: строки с датами, когда ставка не менялась отфильтровываются. Так получается 55 строк вместо 2700+. А пользоваться также: VLOOKUP (ВПР) с 4-м параметром True.
Спасибо за внимание! Всех с 1-м сентября!
🏄 И спасибо нашему прекрасному Михаилу Смирнову, он хоть и не в ЦБ (пока), но многое сделал для извлечения информации про курсы валют и показатели
Ребятки, привет!
Вот формула:
=LET(_data; IMPORTHTML("https://cbr.ru/hd_base/KeyRate/?UniDbQuery.Posted=True&UniDbQuery.From=17.09.2013&UniDbQuery.To=" & TEXT(TODAY(); "dd.mm.yyyy"); "table"; 1); REDUCE({"Дата"\ "Ключевая ставка"}; SEQUENCE(ROWS(_data) - 1; 1; ROWS(_data); -1); LAMBDA(_acc; _i; LET(_date; --INDEX(_data; _i; 1); _value; INDEX(_data; _i; 2) / 100; IF(INDEX(_acc; ROWS(_acc); 2) <> _value; {_acc; _date\ _value}; _acc)))))
Формула достаёт значения ключевой ставки ЦБ РФ с сайта с 17.09.2013 (до этой даты данных нет) по сегодняшний день, приводит строки с датой и значением ставки к числовым значениям (формат столбца с датой надо будет задать руками, чтоб красиво отображалось).
Ещё она оставляет только новые значения: строки с датами, когда ставка не менялась отфильтровываются. Так получается 55 строк вместо 2700+. А пользоваться также: VLOOKUP (ВПР) с 4-м параметром True.
Спасибо за внимание! Всех с 1-м сентября!
🏄 И спасибо нашему прекрасному Михаилу Смирнову, он хоть и не в ЦБ (пока), но многое сделал для извлечения информации про курсы валют и показатели
9🔥60👍33❤10👎1🙏1
Задача: пронумеровать список, но так, чтобы пропуски игнорировались.
Если бы пропусков не было, можно просто использовать функцию СТРОКА / ROW, возвращающую номер строки, и одной формулой массива получить все номера:
А с пустыми строками?
Вот такой вариант — простой , но и без формулы массива (то есть формулы будут в каждой строке листа) — сработает. Берем диапазон с началом в первой ячейке (и ее закрепляем долларами) и с концом в текущей строке (для первой строки таблицы и начало и конец у диапазона совпадают, $B$2:B2.
И считаем количество значений в этом диапазона (СЧЁТЗ / COUNTA). Проверяем на пустоту и в таком случае ячейку с номерами тоже оставляем пустой.
А можно ли это решить одной формулой? Можно 🤠Но это будет посложнее. Можно через MAP и СМЕЩ (OFFSET). Какие еще предложения будут у вас?
Если бы пропусков не было, можно просто использовать функцию СТРОКА / ROW, возвращающую номер строки, и одной формулой массива получить все номера:
=ArrayFormula(ЕСЛИ (ЕПУСТО(B2:B);""; СТРОКА(B2:B)-1))
А с пустыми строками?
Вот такой вариант — простой , но и без формулы массива (то есть формулы будут в каждой строке листа) — сработает. Берем диапазон с началом в первой ячейке (и ее закрепляем долларами) и с концом в текущей строке (для первой строки таблицы и начало и конец у диапазона совпадают, $B$2:B2.
И считаем количество значений в этом диапазона (СЧЁТЗ / COUNTA). Проверяем на пустоту и в таком случае ячейку с номерами тоже оставляем пустой.
=ЕСЛИ(B2="";"";СЧЁТЗ($B$2:B2))
А можно ли это решить одной формулой? Можно 🤠Но это будет посложнее. Можно через MAP и СМЕЩ (OFFSET). Какие еще предложения будут у вас?
8👍35❤3👨💻3😎2👎1
А вот и ссылки
📗 Чат, где почти 6к активных подписчиков: @google_spreadsheets_chat
📕 Оглавление канала
⭐️ Заказ работы у нас
📗 Чат, где почти 6к активных подписчиков: @google_spreadsheets_chat
📕 Оглавление канала
⭐️ Заказ работы у нас
👍5👎1🫡1
СОБИРАТОР 4.0
В прошлом году мы выпустили свой СОБИРАТОР – интерфейс для сбора других Таблиц через sheets api (самый быстрый скриптовый способ).
Задаёте правила сбора Таблиц в другие Таблицы и собираете, к примеру, 50 Таблиц ваших продавцов в одну сводную Таблицу и 30 Таблиц в другую сводную Таблицу, на лету фильтруя и оставляя только нужные столбцы.
Сегодня выпускаем обновление:
— теперь можно указать частоту загрузки каждой таблицы в минутах;
— можно выбрать тип копирования данных (formula / formatted_value / unformatted_value);
— решена проблема с добавлением новых данных: раньше они (иногда) вставлялись со сдвигом;
Главное:
Решение стало полностью автоматическим – теперь один раз заполняете конфиг сбора, выставляете частоту обновления в минутах, ставите скрипт в расписание и вуаля – данные собираются регулярно и уже без вашего участия.
СОБИРАТОР
ИНСТРУКЦИЯ
=
🔥НАШ КУРС НА SKILLBOX: Таблицы и GAS, Excel и VBA
📗ОГЛАВЛЕНИЕ КАНАЛА, категории | всё оглавление
⭐️ Заказ работы у нас
Друзья, после публикации собиратора к нам пришло много клиентов, которые рассказали, что активно используют скрипт в своей работе. Это приятно. Повторяем пост про собиратор для новых подписчиков нашего канала
Про что это вообще?
Как-то к нам пришел Дима @IT_sAdmin и сказал – ребята, помогите! Мне очень нужно регулярно брать данные из больших Таблиц, фильтровать, а потом копировать результат в другие Таблицы, других Таблиц будет много (сотни их). Нужно, чтобы был интерфейс и всем этим волшебством можно было управлять из него.
Мы ответили – окей, будет тебе интерфейс. Так и появился наш скрипт для копирования Таблиц, в этом посте – его третья версия.
В прошлом году мы выпустили свой СОБИРАТОР – интерфейс для сбора других Таблиц через sheets api (самый быстрый скриптовый способ).
Задаёте правила сбора Таблиц в другие Таблицы и собираете, к примеру, 50 Таблиц ваших продавцов в одну сводную Таблицу и 30 Таблиц в другую сводную Таблицу, на лету фильтруя и оставляя только нужные столбцы.
Сегодня выпускаем обновление:
— теперь можно указать частоту загрузки каждой таблицы в минутах;
— можно выбрать тип копирования данных (formula / formatted_value / unformatted_value);
— решена проблема с добавлением новых данных: раньше они (иногда) вставлялись со сдвигом;
Главное:
Решение стало полностью автоматическим – теперь один раз заполняете конфиг сбора, выставляете частоту обновления в минутах, ставите скрипт в расписание и вуаля – данные собираются регулярно и уже без вашего участия.
СОБИРАТОР
ИНСТРУКЦИЯ
=
🔥НАШ КУРС НА SKILLBOX: Таблицы и GAS, Excel и VBA
📗ОГЛАВЛЕНИЕ КАНАЛА, категории | всё оглавление
⭐️ Заказ работы у нас
🔥61👍19❤6👎1😈1
ОЗОН, Список отправлений FBO | @google_sheets
Друзья, выкладываем Таблицу со скриптом, с помощью которой можно выгрузить список отправлений FBO из API маркетплейса OZON.
Таблица скотом кодом.
Страничка из описания API OZON про этот метод.
⭐️ У нас много наработок для OZON / WB / Яндекс Маркет, поэтому, нужна любая автоматизация - напишите в нашего бота, а мы к вам оперативно вернемся
Друзья, выкладываем Таблицу со скриптом, с помощью которой можно выгрузить список отправлений FBO из API маркетплейса OZON.
Таблица с
Страничка из описания API OZON про этот метод.
И если вы совсем новичок, что нужно, чтобы скрипт заработал:
1) делаем копию Таблицы
2) идем в личный кабинет OZON и получаем client_id и client_secret, открываем свою копию Таблицы, редактор скриптов и вставляем эти аргументы на лист main
3) далее в Таблице выбираем диапазон, за который нужны отправления, жмакаем кнопку и получаем список на лист
4) кстати, данные вставляются с помощью sheets api, поэтому, если будете копировать просто код - не забывайте включить эту службу в сервисах
⭐️ У нас много наработок для OZON / WB / Яндекс Маркет, поэтому, нужна любая автоматизация - напишите в нашего бота, а мы к вам оперативно вернемся
1🔥17👍10❤5💩2👎1🤗1
Google Таблицы
ОЗОН, Список отправлений FBO | @google_sheets Друзья, выкладываем Таблицу со скриптом, с помощью которой можно выгрузить список отправлений FBO из API маркетплейса OZON. Таблица с котом кодом. Страничка из описания API OZON про этот метод. И если вы совсем…
Обновили Таблицу загрузки отправлений из OZON.
Теперь данные выгружаются даже если API возвращает больше 1000 строк.
Спасибо нашему подписчику за наводку🏄♂️
Теперь данные выгружаются даже если API возвращает больше 1000 строк.
Спасибо нашему подписчику за наводку
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍17👎2🔥2💩1🦄1
Google Таблицы
Обновление нашей Таблицы WB: загружаем отчет по реализации из API Продолжаем разговор и продолжаем добавлять полезное в нашу Таблицу WB. Отчёт по реализации – главный отчёт продавца Wildberries. Внутри отчёта – прибыль продавца за каждый товар, также те…
Отчет по реализации WB заработал
1) Таблица, с отчетом по реализации ВБ и остатками ФБО t.me/google_sheets/1143
2) Загружаем расходы в Таблицу по рекламе ВБ, API t.me/google_sheets/1460
3) Пост "в поисках идеального дашборда для маркетплейсов" с интересными комментариями t.me/google_sheets/1475
4) WB, достаём топ-100 товаров по запросу t.me/google_sheets/1116
5) Таблица для расчета себестоимости на KazanExpress t.me/google_sheets/1199
6) Достаём характеристики и описание товаров из ВБ, Таблица со скриптом t.me/google_sheets/1404
🏄 Заказ у нас @vas_mnogo_a_ya_bot
1) Таблица, с отчетом по реализации ВБ и остатками ФБО t.me/google_sheets/1143
2) Загружаем расходы в Таблицу по рекламе ВБ, API t.me/google_sheets/1460
3) Пост "в поисках идеального дашборда для маркетплейсов" с интересными комментариями t.me/google_sheets/1475
4) WB, достаём топ-100 товаров по запросу t.me/google_sheets/1116
5) Таблица для расчета себестоимости на KazanExpress t.me/google_sheets/1199
6) Достаём характеристики и описание товаров из ВБ, Таблица со скриптом t.me/google_sheets/1404
🏄 Заказ у нас @vas_mnogo_a_ya_bot
👍16❤5👎1😎1
Выбор нескольких значений в выпадающих списках
Новая возможность (анонсирована Google в июле 2024) в проверке данных (неважно, в обычных ячейках или в "умных" таблицах через выбор типа столбца) — выбор нескольких объектов.
Визуально это как несколько чипов (выбрать другой стиль отображения, как классическую стрелку, уже будет нельзя), но в ячейке это будет текстовая строка со значениями, разделенными запятыми. Значит, для последующей обработки их нужно будет извлекать функцией SPLIT.
Не самый лучший вариант для хранения данных и последующей работы, но с формулами массива и LAMBDA не будет великой проблемы обработать отдельные значения одной формулой.
Чтобы включить опцию, нужно в боковой панели проверки данных включить флажок "Разрешить выбор нескольких объектов" (Allow multiple selections).
Новая возможность (анонсирована Google в июле 2024) в проверке данных (неважно, в обычных ячейках или в "умных" таблицах через выбор типа столбца) — выбор нескольких объектов.
Визуально это как несколько чипов (выбрать другой стиль отображения, как классическую стрелку, уже будет нельзя), но в ячейке это будет текстовая строка со значениями, разделенными запятыми. Значит, для последующей обработки их нужно будет извлекать функцией SPLIT.
Не самый лучший вариант для хранения данных и последующей работы, но с формулами массива и LAMBDA не будет великой проблемы обработать отдельные значения одной формулой.
Чтобы включить опцию, нужно в боковой панели проверки данных включить флажок "Разрешить выбор нескольких объектов" (Allow multiple selections).
51👍43❤3🔥3👎1
Если у вас проблемы с ютубом: перезалили несколько видео на Kinescope. Учитесь на здоровье!
Пользовательские числовые форматы в Google Таблицах:
https://kinescope.io/n8ohYBpQ3w3gufd8Ab4owc
Умные таблицы в Google Spreadsheets:
https://kinescope.io/navBqmzZt1UBqUCgBgxGjx
Видео про относительные и абсолютные ссылки. В интерфейсе Excel, но актуально для всех, кто только начинает работать с формулами и хочет окончательно разобраться со ссылками и долларами:
https://kinescope.io/9tPfY1ZSxa1NFXoTRoqeU2
Пользовательские числовые форматы в Google Таблицах:
https://kinescope.io/n8ohYBpQ3w3gufd8Ab4owc
Умные таблицы в Google Spreadsheets:
https://kinescope.io/navBqmzZt1UBqUCgBgxGjx
Видео про относительные и абсолютные ссылки. В интерфейсе Excel, но актуально для всех, кто только начинает работать с формулами и хочет окончательно разобраться со ссылками и долларами:
https://kinescope.io/9tPfY1ZSxa1NFXoTRoqeU2
Kinescope
Пользовательские числовые форматы в Google Таблицах (Custom number formats in Google Sheets)
Рассматриваем основные символы и правила для создания пользовательских числовых форматов в Google Таблицах.
Таблица с примерами из видео: https://docs.google.com/spreadsheets/d/1Nn7HLI0y_eEVBnS-qhsDUPuwpsZU6FgCK7KT7ACKbQE/edit?usp=sharing
Наш канал "Google…
Таблица с примерами из видео: https://docs.google.com/spreadsheets/d/1Nn7HLI0y_eEVBnS-qhsDUPuwpsZU6FgCK7KT7ACKbQE/edit?usp=sharing
Наш канал "Google…
🔥18❤5👍5👎2
Давненько мы про производственный календарь не говорили
Есть прекраснейший сайт http://xmlcalendar.ru/ — спасибо его создателям — с производственным календарем за разные годы и в разных форматах. XML, TXT, CSV и другие.
Ссылки каждый год отличаются только на номер года.
А значит, можно загружать данные в таблицы.
Например, в формате TXT список всех выходных и праздничных дней года. Ссылка для 2024 года такая:
http://xmlcalendar.ru/data/ru/2024/calendar.txt
Соответственно, можно получить список для текущего года в Google Таблицах следующей формулой:
Но есть еще такое неприятное явление, как рабочие выходные дни (СБ-ВС).
Например, в 2024 году это 27 апреля и 28 декабря.
Как получить список таких дат?
В XML формате календарь есть тип дня t — единица для выходных, 2 для сокращенных рабочих, 3 — то, что нам нужно (рабочий день в СБ / ВС).
Можно получить этот список такой формулой (спасибо Михаилу Смирнову за более лаконичный вариант в комментариях):
Соответственно, если нужны праздники, то t = 1, если сокращенные рабочие, то t = 2.
Правда, формат дат в XML календаре такой: MM.DD (04.27). Таблицы его не поймут, даже если применить ДАТАЗНАЧ / DATEVALUE.
Поэтому сначала придется поменять день и месяц местами (можно с помощью REGEXREPLACE), а потом добавить DATEVALUE:
Есть прекраснейший сайт http://xmlcalendar.ru/ — спасибо его создателям — с производственным календарем за разные годы и в разных форматах. XML, TXT, CSV и другие.
Ссылки каждый год отличаются только на номер года.
А значит, можно загружать данные в таблицы.
Например, в формате TXT список всех выходных и праздничных дней года. Ссылка для 2024 года такая:
http://xmlcalendar.ru/data/ru/2024/calendar.txt
Соответственно, можно получить список для текущего года в Google Таблицах следующей формулой:
=IMPORTDATA("http://xmlcalendar.ru/data/ru/" & YEAR(TODAY()) & "/calendar.txt")
Но есть еще такое неприятное явление, как рабочие выходные дни (СБ-ВС).
Например, в 2024 году это 27 апреля и 28 декабря.
Как получить список таких дат?
В XML формате календарь есть тип дня t — единица для выходных, 2 для сокращенных рабочих, 3 — то, что нам нужно (рабочий день в СБ / ВС).
Можно получить этот список такой формулой (спасибо Михаилу Смирнову за более лаконичный вариант в комментариях):
=IMPORTXML("http://xmlcalendar.ru/data/ru/" & YEAR(TODAY()) & "/calendar.xml"; "//day[@t = 3]/@d")
Соответственно, если нужны праздники, то t = 1, если сокращенные рабочие, то t = 2.
Правда, формат дат в XML календаре такой: MM.DD (04.27). Таблицы его не поймут, даже если применить ДАТАЗНАЧ / DATEVALUE.
Поэтому сначала придется поменять день и месяц местами (можно с помощью REGEXREPLACE), а потом добавить DATEVALUE:
=ArrayFormula(DATEVALUE(REGEXREPLACE(IMPORTXML("http://xmlcalendar.ru/data/ru/" &YEAR(TODAY()) & "/calendar.xml"; "//day[@t = 3]/@d");"(\d{2})\.(\d{2})";"$2\.$1")))
xmlcalendar.ru
Производственный календарь в формате XML для России
Производственный календарь в формате XML на 2025 год для России
👍38❤6🔥4👎3
Декартово произведение (все возможные комбинации фраз) формулой
Забираем первый список слов (фраз) функцией TOCOL (второй аргумент = 1 исключает пустые значения)
Из второго списка тоже забираем все без пустых и вдобавок транспонируем (делаем строкой) — функция TOROW:
Добавляем между ними пробел и склеиваем:
Результатом этого шага станет двумерный диапазон с нужными значениями. Останется превратить его в список (TOCOL или FLATTEN) и применить ArrayFormula или INDEX сверху, чтобы получить не одно значение, а весь массив:
Забираем первый список слов (фраз) функцией TOCOL (второй аргумент = 1 исключает пустые значения)
TOCOL(A:A; 1)
Из второго списка тоже забираем все без пустых и вдобавок транспонируем (делаем строкой) — функция TOROW:
TOROW(B:B; 1)
Добавляем между ними пробел и склеиваем:
TOCOL(A:A; 1)& " " &TOROW(B:B; 1)
Результатом этого шага станет двумерный диапазон с нужными значениями. Останется превратить его в список (TOCOL или FLATTEN) и применить ArrayFormula или INDEX сверху, чтобы получить не одно значение, а весь массив:
=ArrayFormula(FLATTEN(TOCOL(A:A; 1)& " " &TOROW(B:B; 1)))
👍53🔥26❤4👎1
INDIRECT / ДВССЫЛ — функция, которая делает текст ссылкой на диапазон
*
Для чего это нужно? Ну, помимо ссылки, которая не слетит никогда (даже при удалении строк):
1 Вы собираете ссылку из нескольких кусочков. Например, название листа берете из столбца или в результате проверки какого-то условия функцией IF / ЕСЛИ. В результате склейки (конкатенации) на выходе уже текст, а не ссылка. ДВССЫЛ превратит текст в ссылку.
Пример (поиск на разных листах)
И более лютый пример (формула, которая ищет при разной структуре листов)
2 Вам нужно ссылаться в условном форматировании на другой лист. Напрямую не получится, а через ДВССЫЛ можно (а в Excel еще пригодится для ссылки на умные таблицы в проверке данных)
Пример
3 Вы формируете ссылку на динамический диапазон — по параметрам. Например, берете строку начала и конца из ячеек:
Такая замена OFFSET для формировании динамической ссылки на диапазон.
=A1
— это ссылка на ячейку A1="A1"
— это текстовая строка из двух символов, буквы A и единицы=INDIRECT("A1")
— это ссылка на ячейку A1 (причем даже если вы удалите строку 1, это будет ссылка на A1, только теперь это будет другая ячейка; а обычная ссылка =A1 превратится в ошибку в таком случае)=INDIRECT(A1)
— ссылка на диапазон/ячейку, адрес которого(-ой) находится в ячейке A1 🤯*
Для чего это нужно? Ну, помимо ссылки, которая не слетит никогда (даже при удалении строк):
1 Вы собираете ссылку из нескольких кусочков. Например, название листа берете из столбца или в результате проверки какого-то условия функцией IF / ЕСЛИ. В результате склейки (конкатенации) на выходе уже текст, а не ссылка. ДВССЫЛ превратит текст в ссылку.
Пример (поиск на разных листах)
И более лютый пример (формула, которая ищет при разной структуре листов)
2 Вам нужно ссылаться в условном форматировании на другой лист. Напрямую не получится, а через ДВССЫЛ можно (а в Excel еще пригодится для ссылки на умные таблицы в проверке данных)
Пример
3 Вы формируете ссылку на динамический диапазон — по параметрам. Например, берете строку начала и конца из ячеек:
=INDIRECT("A" & ячейка с номером первой строки & ":A"
& ячейка с номером последней строки)
Такая замена OFFSET для формировании динамической ссылки на диапазон.
Telegram
Google Таблицы
ВПР-им с разных листов
Если вам нужно "подтягивать" данные с помощью ВПР / VLOOKUP с разных листов (например, на каждый город/месяц/склад у вас отдельный лист с данными), можно собрать ссылку с помощью INDIRECT / ДВССЫЛ.
Обычная ссылка на другой лист выглядит…
Если вам нужно "подтягивать" данные с помощью ВПР / VLOOKUP с разных листов (например, на каждый город/месяц/склад у вас отдельный лист с данными), можно собрать ссылку с помощью INDIRECT / ДВССЫЛ.
Обычная ссылка на другой лист выглядит…
👍27❤5❤🔥2👎1
ИЗБРАННЫЕ СКРИПТЫ НАШЕГО КАНАЛА
Посмотрите, вдруг вы пропустили что-нибудь сочное:
— СОБИРАТОР 4.0, интерфейс для сбора других Таблиц →
— 🧞♂️ПРЕВРАЩАТОР Листа Таблицы в xlsx / pdf / csv →
— ОТПРАВЛЯТОР, отправляем ваши отчеты в теле письма по расписанию →
— ОТПРАВЛЯТОР 2, создаём из Таблиц PDF и JPG и рассылаем в Телеграм по заданному расписанию →
— ДОПУСКАТОР 2, убираем из файлов всех пользователей кроме себя и закрываем доступ по ссылке. →
— ЗАМЕНЯТОР, заменяем значения по словарю в выбранных Таблицах →
— ЗАКРЫВАТОР, скрипт автоматического закрытия прошедших дней →
— ДОСТАВАТОР, берём из кода веб-страниц регуляркой нужное →
— Скриптами определяем, когда освободится домен →
— Запускаем скрипт по чекбоксу (работает и из мобильной версии Таблиц) →
— DRIVE COLUMBUS, смотрим на свой Google Диск и управляем им прямо из Таблицы →
— С помощью скрипта даём доступ к другой Таблице, чтобы IMPORTRANGE заработал сразу →
— Защищаем скрипты от редактирования →
— Регулярный бэкап Таблиц в формате XLSX в телеграм! →
— Скрипт. Распознаем текст на изображениях. OCR в Google Docs →
— Скрипт onEdit(), реагирующий на изменения и отправляющий письма (или триггер в триггере) →
Скрипт, загружаем письма вашего GMAIL-аккаунта в Таблицу →
— Важный скрипт. Связанные выпадающие списки из кэша →
🏄 Заказ у нас @vas_mnogo_a_ya_bot
Посмотрите, вдруг вы пропустили что-нибудь сочное:
— СОБИРАТОР 4.0, интерфейс для сбора других Таблиц →
— 🧞♂️ПРЕВРАЩАТОР Листа Таблицы в xlsx / pdf / csv →
— ОТПРАВЛЯТОР, отправляем ваши отчеты в теле письма по расписанию →
— ОТПРАВЛЯТОР 2, создаём из Таблиц PDF и JPG и рассылаем в Телеграм по заданному расписанию →
— ДОПУСКАТОР 2, убираем из файлов всех пользователей кроме себя и закрываем доступ по ссылке. →
— ЗАМЕНЯТОР, заменяем значения по словарю в выбранных Таблицах →
— ЗАКРЫВАТОР, скрипт автоматического закрытия прошедших дней →
— ДОСТАВАТОР, берём из кода веб-страниц регуляркой нужное →
— Скриптами определяем, когда освободится домен →
— Запускаем скрипт по чекбоксу (работает и из мобильной версии Таблиц) →
— DRIVE COLUMBUS, смотрим на свой Google Диск и управляем им прямо из Таблицы →
— С помощью скрипта даём доступ к другой Таблице, чтобы IMPORTRANGE заработал сразу →
— Защищаем скрипты от редактирования →
— Регулярный бэкап Таблиц в формате XLSX в телеграм! →
— Скрипт. Распознаем текст на изображениях. OCR в Google Docs →
— Скрипт onEdit(), реагирующий на изменения и отправляющий письма (или триггер в триггере) →
Скрипт, загружаем письма вашего GMAIL-аккаунта в Таблицу →
— Важный скрипт. Связанные выпадающие списки из кэша →
🏄 Заказ у нас @vas_mnogo_a_ya_bot
👍34❤13🔥8👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Делаем кнопку группировки более наглядной
вот такой лайфхак от одного из подписчиков Бена Коллинза.
Функция SUBTOTAL / ПРОМЕЖУТОЧНЫЕ.ИТОГИ (про нее подробнее тут) агрегирует только видимые ячейки.
Соответственно, мы можем проверять, раскрыта ли ячейка строкой ниже — если применим функцию COUNTA / СЧЁТЗ, то есть подсчет любых значений. В SUBTOTAL это функция номер 3 (номер функции в первом аргументе).
И если строка скрыта, то функция вернет 0. Тогда можно выдать текст в духе "Подробнее" или "Раскрыть". Если не 0 — значит, строка ниже видима, выдаем другую надпись ("Скрыть").
вот такой лайфхак от одного из подписчиков Бена Коллинза.
Функция SUBTOTAL / ПРОМЕЖУТОЧНЫЕ.ИТОГИ (про нее подробнее тут) агрегирует только видимые ячейки.
Соответственно, мы можем проверять, раскрыта ли ячейка строкой ниже — если применим функцию COUNTA / СЧЁТЗ, то есть подсчет любых значений. В SUBTOTAL это функция номер 3 (номер функции в первом аргументе).
И если строка скрыта, то функция вернет 0. Тогда можно выдать текст в духе "Подробнее" или "Раскрыть". Если не 0 — значит, строка ниже видима, выдаем другую надпись ("Скрыть").
=IF( SUBTOTAL (103;ячейка)=0; "⬇️Подробнее" ; "⬆️Скрыть")
👍48🔥31❤5👎3