Media is too big
VIEW IN TELEGRAM
Загружаем файлы прямо из Таблицы
Друзья, привет! Презентуем вам Таблицу со скриптом, с помощью нее вы сможете загружать файлы на Google Диск и возвращать в Таблицу ссылку на загруженный файл
Как вы можете это использовать? Допустим, вы торгуете на WB / OZON, делаете в Таблице каталог своих товаров и сразу же загружаете через эту Таблицу фотографии этих товаров.
Таблица (делаем копию)
Ниже просто код:
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Друзья, привет! Презентуем вам Таблицу со скриптом, с помощью нее вы сможете загружать файлы на Google Диск и возвращать в Таблицу ссылку на загруженный файл
Как вы можете это использовать? Допустим, вы торгуете на WB / OZON, делаете в Таблице каталог своих товаров и сразу же загружаете через эту Таблицу фотографии этих товаров.
Таблица (делаем копию)
Ниже просто код:
<form>
<input type="file" name="file" onchange="upload(this.parentNode)" />
</form>
<script>
function upload(e){
const file = e.file.files[0];
const fr = new FileReader();
fr.onload = e => google.script.run.withSuccessHandler(function() { google.script.host.close() })
.upload([[...new Int8Array(e.target.result)], file.type, file.name]);
fr.readAsArrayBuffer(file);
};
</script>
const folderUrl = 'https://drive.google.com/drive/folders/1N9ztzVnG4Xz6AymLN5nByQXc9JOTWdou';
function openSidebar() {
SpreadsheetApp.getUi().showSidebar(HtmlService.createHtmlOutputFromFile("index"));
};
function upload(e) {
const url = DriveApp.getFolderById(getIdFromUrl(folderUrl)).createFile(Utilities.newBlob(...e)).getUrl();
// SpreadsheetApp.getActiveRange().setValue(url);
SpreadsheetApp.getActiveRange().offset(0, 0, 1, 3).setValues([[url, e[1], e[2]]]);
};
function getIdFromUrl(url) {
return url.match(/[-\w]{25,}/)[0];
}
}
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
November 12, 2024
Google Таблицы
Загружаем файлы прямо из Таблицы Друзья, привет! Презентуем вам Таблицу со скриптом, с помощью нее вы сможете загружать файлы на Google Диск и возвращать в Таблицу ссылку на загруженный файл Как вы можете это использовать? Допустим, вы торгуете на WB / OZON…
Сделали доработку и теперь скрипт возвращает в ячейки:
- ссылку на загруженный файл
- тип файла
- название
PS Если нужна только ссылка - то закомментируйте 10 строку и раскомментируйте 9 строку.
- ссылку на загруженный файл
- тип файла
- название
PS Если нужна только ссылка - то закомментируйте 10 строку и раскомментируйте 9 строку.
November 13, 2024
У вас есть дата, а вы хотите номера/названия месяцев в отдельном столбце (допустим, для сводной, для отчетов, для фильтрации) — 7 вариантов
Самый простой вариант — функция MONTH / МЕСЯЦ. Это число, порядковый номер (3 для марта, 11 для ноября).
С помощью функции TEXT / ТЕКСТ можно получить также вариант с нулем для коротких номеров (03 для марта, но 11 для ноября). С помощью нее же — текстовые варианты (мар. и марта для российских региональных настроек).
Если "марта" вам не нравится и вы хотите использовать абсолютно любые варианты, то можно брать их из диапазона с помощью INDEX. Или из виртуального массива внутри формулы с помощью того же INDEX или VLOOKUP или CHOOSE.
По ссылке — семь с половиной вариантов, включая формулу массива, выдающую ваши названия месяцев для всего столбца (без вспомогательного диапазона; названия внутри формулы).
Таблица с примерами формул
Самый простой вариант — функция MONTH / МЕСЯЦ. Это число, порядковый номер (3 для марта, 11 для ноября).
С помощью функции TEXT / ТЕКСТ можно получить также вариант с нулем для коротких номеров (03 для марта, но 11 для ноября). С помощью нее же — текстовые варианты (мар. и марта для российских региональных настроек).
Если "марта" вам не нравится и вы хотите использовать абсолютно любые варианты, то можно брать их из диапазона с помощью INDEX. Или из виртуального массива внутри формулы с помощью того же INDEX или VLOOKUP или CHOOSE.
По ссылке — семь с половиной вариантов, включая формулу массива, выдающую ваши названия месяцев для всего столбца (без вспомогательного диапазона; названия внутри формулы).
Таблица с примерами формул
November 13, 2024
Напоминаем, друзья: флажки (Checkboxes) в Google Таблицах (и в Excel 365, кстати) можно использовать не только как переключатели значений TRUE / FALSE, но и как визуальное представление этих значений, возвращаемых формулами.
Иначе говоря, если у вас формулы, что-то проверяющие, и выдающие ИСТИНА / ЛОЖЬ, можно вставить "поверх" флажки. Такие флажки уже нельзя переключить пробелом или мышкой.
Они будут переключаться при изменении значения, возвращаемого формулой.
Что это за формулы могут быть? Какие-нибудь проверки значений в ячейке (функции ISEMAIL, ISURL, ISBLANK, ISTEXT и другие), просроченных платежей и прочего, как на скриншоте, нескольких условий сразу через AND / OR.
Или что-нибудь многоэтажное через LAMBDA — например, был ли у сотрудника отпуск в 14 дней подряд (про это читайте тут)
Иначе говоря, если у вас формулы, что-то проверяющие, и выдающие ИСТИНА / ЛОЖЬ, можно вставить "поверх" флажки. Такие флажки уже нельзя переключить пробелом или мышкой.
Они будут переключаться при изменении значения, возвращаемого формулой.
Что это за формулы могут быть? Какие-нибудь проверки значений в ячейке (функции ISEMAIL, ISURL, ISBLANK, ISTEXT и другие), просроченных платежей и прочего, как на скриншоте, нескольких условий сразу через AND / OR.
Или что-нибудь многоэтажное через LAMBDA — например, был ли у сотрудника отпуск в 14 дней подряд (про это читайте тут)
November 13, 2024
This media is not supported in your browser
VIEW IN TELEGRAM
#Лайфхак❗️Как в Google таблице с помощью условного форматирования сделать границы ячеек
1. Создаём/наполняем данными нашу гугл таблицу как обычно.
2. Сохраняем (скачиваем) нашу таблицу в Excel-формате (меню Файл > Скачать > Microsoft Excel (.xlsx)).
3. Открываем таблицу из п.2 в Excel.
4. Создаём правила Условного форматирования в Excel.
5. Сохраняем (загружаем) таблицу из п.3 в Google Drive.
6. Открываем таблицу из п.4 и сохраняем в формате Гугл Таблиц (меню Файл > Сохранить как таблицу Google)
✅ Профит! Условное форматирование сохранилось!
Конечно, не в полном объёме, например, цвет и толщина границ не сохраняется.
⚠️И главный минус. Данное правило нельзя изменять!
Пример. Мы сделали с помощью УФ несколько границ: между разными группами, слева, справа и внизу...
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
Пост от активного члена нашего сообщества Алексея:
1. Создаём/наполняем данными нашу гугл таблицу как обычно.
2. Сохраняем (скачиваем) нашу таблицу в Excel-формате (меню Файл > Скачать > Microsoft Excel (.xlsx)).
3. Открываем таблицу из п.2 в Excel.
4. Создаём правила Условного форматирования в Excel.
5. Сохраняем (загружаем) таблицу из п.3 в Google Drive.
6. Открываем таблицу из п.4 и сохраняем в формате Гугл Таблиц (меню Файл > Сохранить как таблицу Google)
✅ Профит! Условное форматирование сохранилось!
Конечно, не в полном объёме, например, цвет и толщина границ не сохраняется.
⚠️И главный минус. Данное правило нельзя изменять!
Пример. Мы сделали с помощью УФ несколько границ: между разными группами, слева, справа и внизу...
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
November 18, 2024
Media is too big
VIEW IN TELEGRAM
Создаем пакет документов для оформления нового сотрудника прямо из Google Таблицы
Коллеги, привет! Наш подписчик
Таблица со скриптом
Шаблон документов
🔥 Если решение понравится – можете сделать донат Василию по реквизитам, мы передадим.
😈 А будут вопросы – пишите в наш чат.
Коллеги, привет! Наш подписчик
Василий
поделился с нами своим решением, которое он написал на GAS-скриптах.Василий
решал задачу "у меня есть шаблон в Google Документе, в нём несколько документов, я хочу заполнять нужные мне документы данными из таблицы и сохранять результат в папку, а потом распечатать это и дать сотруднику подписать".
Чтобы все заработало, вы:
1) копируете Таблицу себе
2) вводите на лист "настройки" ссылку на папку, куда будут сохраняться созданные документы
3) копируете себе шаблон, меняете его под себя (если требуется) и также вносите ссылку на него на лист "настройки"
4) далее отмечаете чекбоксами какие документы вы хотите из шаблона оставить и заполнить
5) далее переходите на лист "ввод данных" и заполняете данные по сотруднику и смело нажимаете на кнопку "создать документы!"
И скрипт:
1) копирует ваш шаблон
2) оставляет внутри него только выбранные документы
3) далее меняет теги в шаблоне на то, что вы занесли на лист "ввод данных"
4) переносит шаблон в указанную вами папку и вставляет ссылку на документ, который получился на лист "ввод данных"
Василий оставил комментарии по в скрипте по каждой строке кода, поэтому, если захотите - можно попробовать разобраться, как все работает
Таблица со скриптом
Шаблон документов
🔥 Если решение понравится – можете сделать донат Василию по реквизитам, мы передадим.
😈 А будут вопросы – пишите в наш чат.
November 21, 2024
This media is not supported in your browser
VIEW IN TELEGRAM
Нумеруем только видимые строки
Задача: хотим, чтобы при скрытии строк нумерация менялась: чтобы номера были по порядку только для видимых в текущий момент строк.
Решение:
(если начало в строке два)
Считаем (103 = СЧЁТЗ / COUNTA) значения в каком-то столбце таблицы, но считаем только видимые (не скрытые), так как используем SUBTOTAL / ПРОМЕЖУТОЧНЫЕ.ИТОГИ.
Ссылка вида $B$2:B2 — то есть всегда считаем с начала таблицы до текущей строки (при смещении формулы будет меняться только конец диапазона).
Задача: хотим, чтобы при скрытии строк нумерация менялась: чтобы номера были по порядку только для видимых в текущий момент строк.
Решение:
=SUBTOTAL(103;$B$2:B2)
(если начало в строке два)
Считаем (103 = СЧЁТЗ / COUNTA) значения в каком-то столбце таблицы, но считаем только видимые (не скрытые), так как используем SUBTOTAL / ПРОМЕЖУТОЧНЫЕ.ИТОГИ.
Ссылка вида $B$2:B2 — то есть всегда считаем с начала таблицы до текущей строки (при смещении формулы будет меняться только конец диапазона).
November 22, 2024
Media is too big
VIEW IN TELEGRAM
Распознаем текст рассказа О`Генри, взяв PDF из интернета с помощью Таблицы
Друзья, в Google Docs есть технология OCR (оптическое распознавание текста). Мы подготовили для вас Таблицу со скриптом и в видео показали, как она умеет "на лету" распознавать текст из pdf / изображений, ссылку на файл мы взяли прямо из интернета.
Таблица со скриптом
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Друзья, в Google Docs есть технология OCR (оптическое распознавание текста). Мы подготовили для вас Таблицу со скриптом и в видео показали, как она умеет "на лету" распознавать текст из pdf / изображений, ссылку на файл мы взяли прямо из интернета.
Таблица со скриптом
Чтобы все заработало у вас:
1) Делаем копию Таблицы
2) В ячейку листа "config" вставляем URL файла (пойдет PDF, картинка, ссылка может быть как на Google Диск, так и на файл в интернете);
3) Запускаем скрипт кнопкой "GO!", скрипт создаст из заданного файла новый Google Документ с текстом и вставит весь текст из него на лист "OCR";
4) Хотите сразу удалять временный файл – уберите комментарий (//) с 29 строки кода;
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
November 26, 2024
Итак, до Google таблиц доезжают ссылки на умные таблицы, которые ранее существовали в Excel.
Изначально с появлением таблиц в Google Spreadsheets можно было ссылаться на все данные в столбце:
Теперь как в Excel — можно ссылаться на весь столбец вместе с заголовками и итогами:
На данные и заголовки, но без итогов:
Можно на итоги или заголовки конкретного столбца
На всю строку заголовков или итогов:
И все это актуально для ссылок на несколько столбцов, которые теперь тоже работают в Google. Указываем первый и последний столбец через двоеточие:
Строка итогов появится, как только введете какую-нибудь формулу под последней строкой таблицы. В Excel там автоматом появлялись функции SUBTOTAL для расчета по видимым строкам, но можно и обычные функции вроде SUM тоже.
Новость тут
Таблица с примерами
Изначально с появлением таблиц в Google Spreadsheets можно было ссылаться на все данные в столбце:
Таблица[Столбец]
Теперь как в Excel — можно ссылаться на весь столбец вместе с заголовками и итогами:
Таблица[[#ALL],[Столбец]]
На данные и заголовки, но без итогов:
Таблица[[#HEADERS],[#DATA],[Столбец]]
Можно на итоги или заголовки конкретного столбца
Таблица[[#HEADERS],[Столбец]]
Таблица[[#TOTALS],[Столбец]]
На всю строку заголовков или итогов:
Таблица[#HEADERS]
Таблица[#TOTALS]
И все это актуально для ссылок на несколько столбцов, которые теперь тоже работают в Google. Указываем первый и последний столбец через двоеточие:
Таблица[[Первый]:[Последний]]
Строка итогов появится, как только введете какую-нибудь формулу под последней строкой таблицы. В Excel там автоматом появлялись функции SUBTOTAL для расчета по видимым строкам, но можно и обычные функции вроде SUM тоже.
Новость тут
Таблица с примерами
November 27, 2024
Пост от нашего читателя Алексея Odysseus
Сегодня у нас не обычный материал, а задачка.
Есть тарифы на электроэнергию: дневной и ночной. Задан период работы электроприбора. Максимальное время работы прибора - 24ч. Посчитать, сколько нужно заплатить за потребленную электроэнергию.
Сразу скажу, задача не на знание редких функция таблиц, а на логическое математическое мышление.
#Лирическое отступление. В чате часто спрашивают:
▸ есть ли какие-то хорошие курсы по таблицам?
▸ как научится писать такие формулы, как Вы?
▸ невероятно, а так можно было?
Из своего опыта, ответственно заявляю:
1. Курсы нужны чтоб быстро и грамотно и усвоить базовые принципы. Если Вы никогда не работали в таблицах, не делали курсовые с большим количеством расчетов, Вам обязательно нужно пройти "базовый курс".
2. Никто и никогда не становится специалистом за пару месяцев. Нужен опыт и практика. Наш чат предоставляет возможность получить и то, и другое!
3. Все сложные механизмы, в том числе и формулы, состоят из сочетания множества простых. Но чтобы уметь сочетать даже простые функции нужно уметь мыслить логически! И сегодня задачка именно на умение думать!
От авторов канала - Алексей, задачка сложная, помоги / подскажи в комментариях, в случае чего
November 29, 2024
Google Таблицы
Пост от нашего читателя Алексея Odysseus Сегодня у нас не обычный материал, а задачка. Есть тарифы на электроэнергию: дневной и ночной. Задан период работы электроприбора. Максимальное время работы прибора - 24ч. Посчитать, сколько нужно заплатить за потребленную…
И ответ на задачку от её автора, Алексея:
Приведу пример оптимального метода расчета для самого простого варианта.
Дано. 2 временных интервала, заданные началами и концами.
start1 - finish1 и start2 - finish2. Найти начало и конец пересечения интервалов, обозначим их как begin и end.
При условии: start1 < finish1 и start2 < finish2
begin = max (start1; start2)
end = min (finish1; finish2)
На примерах с иллюстрации.
1. start1 = 6; finish1 = 18
start2 = 9; finish2 = 15
begin = max (6; 9) = 9
end = min (18; 15) = 15
2. start1 = 6; finish1 = 18
start2 = 3; finish2 = 15
begin = max (6; 3) = 6
end = min (18; 15) = 15
3. start1 = 6; finish1 = 18
start2 = 9; finish2 = 21
begin = max (6; 9) = 9
end = min (18; 21) = 18
December 2, 2024
Комбинированная диаграмма: добавляем фон для периода
Хотим подсветить определенный период на диаграмме фоном.
Для этого:
1 к данным добавляем столбец и в те дни, которые должны быть с фоном, добавляем число — в районе максимального значения наших данных. В примере 14 500, потому что максимальная выручка в районе 14 тысяч, то есть 14 500 — высота нашего будущего фона — точно перекроет все значения.
2 Вставляем диаграмму и выбираем тип "Комбинированная".
3 Для второго ряда данных (фона) выбираем тип "с областями". Для самих данных — по вкусу (можно график или — как на скриншоте — столбики).
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Хотим подсветить определенный период на диаграмме фоном.
Для этого:
1 к данным добавляем столбец и в те дни, которые должны быть с фоном, добавляем число — в районе максимального значения наших данных. В примере 14 500, потому что максимальная выручка в районе 14 тысяч, то есть 14 500 — высота нашего будущего фона — точно перекроет все значения.
2 Вставляем диаграмму и выбираем тип "Комбинированная".
3 Для второго ряда данных (фона) выбираем тип "с областями". Для самих данных — по вкусу (можно график или — как на скриншоте — столбики).
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
December 4, 2024
Google Таблицы
Создаем пакет документов для оформления нового сотрудника прямо из Google Таблицы Коллеги, привет! Наш подписчик Василий поделился с нами своим решением, которое он написал на GAS-скриптах. Василий решал задачу "у меня есть шаблон в Google Документе, в нём…
Сопоставляем список фамилий в Таблице и список файлов в папке, скрипт
Коллеги, Василий продолжает нас баловать решениями, он прислал очередной скрипт, слово автору.
Таблица с примером (делайте копию)
Код отдельно:
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Коллеги, Василий продолжает нас баловать решениями, он прислал очередной скрипт, слово автору.
У нас есть список документов в папке google диска, пусть это военные билеты или паспорта.
Каждый документ лежит в папке диска и имеет название в формате `Фамилия Имя Отчество`.
В Таблице у нас список фамилий и скрипт помогает сопоставить каждую фамилию из списка с файлом в папке, найдя его (файл) с помощью регулярного выражения
Таблица с примером (делайте копию)
Код отдельно:
function ссылки_ссылки() {
const idFolder = idFromUrl('https://drive.google.com/drive/u/0/folders/17uqPgg09Y3EaJJnkbutmzQfOZqIEMi0b'); // ID папки с файлами
const ss = SpreadsheetApp.getActive();
const sh = ss.getSheets()[0];
const range = sh.getRange(1, 1, sh.getLastRow(), 1);
let values = range.getValues();
const files = DriveApp.getFolderById(idFolder).getFiles(); // забираем все файлы из папки
var filesM = [];
while (files.hasNext()) { // создаём массив [Имя, Url] каждого файла
var file = files.next();
filesM = [...filesM, [file.getName(), file.getUrl()]];
};
values = values.map((x, i) => {
const fileUrl = i == 0 || !x[0] ? '' : filesM.filter(z => new RegExp(x[0]).test(z[0]))[0]?.[1] || 'не найдено';
return [x[0], fileUrl];
});
range.offset(0, 0, values.length, values[0].length).setValues(values);
};
function idFromUrl(url) { // функция для извлечения ID из URL
return url.match(/[-\w]{25,}/)[0];
};
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
December 5, 2024
Примеры применения ссылок на таблицы в формулах
начало про ссылки в "умных" таблицах тут
Пара примеров того, как можно использовать ссылки на таблицы на практике.
Допустим, у вас несколько таблиц с одинаковыми заголовками. Чтобы собирать их на одном листе с обновлением, используем функцию VSTACK. Первую берем с заголовками, а в остальных случаях только тело таблицы, чтобы заголовки не дублировались:
Если нам надо загрузить умную таблицу из другого файла — засунем ее во второй аргумент IMPORTRANGE. Если нужно с заголовками — опять-таки, добавляем #ALL:
Только в случае с IMPORTRANGE мы берем название таблицы в кавычки, т.к. это не активная ссылка, а текстовый аргумент этой функции.
И вот в обоих случаях нам не надо беспокоиться о том, сколько будет строк в таблицах-источниках. Все новые строки соберутся в одну пачку функцией VSTACK или будут импортированы IMPORTRANGE.
начало про ссылки в "умных" таблицах тут
Пара примеров того, как можно использовать ссылки на таблицы на практике.
Допустим, у вас несколько таблиц с одинаковыми заголовками. Чтобы собирать их на одном листе с обновлением, используем функцию VSTACK. Первую берем с заголовками, а в остальных случаях только тело таблицы, чтобы заголовки не дублировались:
=VSTACK(ПерваяТаблица[#ALL]; [Вторая]; ... [ЕщеТаблица])
Если нам надо загрузить умную таблицу из другого файла — засунем ее во второй аргумент IMPORTRANGE. Если нужно с заголовками — опять-таки, добавляем #ALL:
=IMPORTRANGE("ID исходной таблицы"; "УмнаяТаблица[#ALL]")
Только в случае с IMPORTRANGE мы берем название таблицы в кавычки, т.к. это не активная ссылка, а текстовый аргумент этой функции.
И вот в обоих случаях нам не надо беспокоиться о том, сколько будет строк в таблицах-источниках. Все новые строки соберутся в одну пачку функцией VSTACK или будут импортированы IMPORTRANGE.
Telegram
Google Таблицы
Итак, до Google таблиц доезжают ссылки на умные таблицы, которые ранее существовали в Excel.
Изначально с появлением таблиц в Google Spreadsheets можно было ссылаться на все данные в столбце:
Таблица[Столбец]
Теперь как в Excel — можно ссылаться на весь…
Изначально с появлением таблиц в Google Spreadsheets можно было ссылаться на все данные в столбце:
Таблица[Столбец]
Теперь как в Excel — можно ссылаться на весь…
December 11, 2024
Запускаем скрипт ровно в 55 минут
Друзья, мне написал Владислав - у него есть скрипт и он хочет его запускать каждый час в конкретной время (например, в 55 минут каждого часа)
Мы решили помочь и написали скрипт, который
1) запускает нужный нам скрипт;
2) далее проверяет, есть ли скрипт в триггерах проекта, если есть - удаляет этот триггер
3) далее создаёт новый триггер, на следующий час, чтобы тот запустился в введенные в коде минуты (аргумент mins)
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Друзья, мне написал Владислав - у него есть скрипт и он хочет его запускать каждый час в конкретной время (например, в 55 минут каждого часа)
Мы решили помочь и написали скрипт, который
1) запускает нужный нам скрипт;
2) далее проверяет, есть ли скрипт в триггерах проекта, если есть - удаляет этот триггер
3) далее создаёт новый триггер, на следующий час, чтобы тот запустился в введенные в коде минуты (аргумент mins)
function googleSheets() {
setDate(); // запускаем нашу функцию
let fName = arguments.callee.name; // получаем имя текущей функции
let triggers = ScriptApp.getProjectTriggers(); // удаляем триггер с текущей функцией, если он есть
for (let i = 0; i < triggers.length; i++) {
let trigger = triggers[i];
if (trigger.getHandlerFunction() == fName) {
ScriptApp.deleteTrigger(triggers[i]);
};
};
let dt = new Date(); //рассчитываем время для запуска функции в следующий раз
let h = dt.getHours();
let mins = 44; //устанавливаем триггер на следующий час на это время
let newDt = new Date(dt.setHours(h, mins, 0) + 60 * 60 * 1000);
Logger.log(newDt);
ScriptApp.newTrigger(fName) // ставим функцию на триггер
.timeBased()
.at(newDt)
.create();
};
function setDate() {
const ss = SpreadsheetApp.getActive();
const sh = ss.getSheets()[0];
sh.getRange((sh.getLastRow() || 0) + 1, 1)
.setValue(new Date());
};
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
December 12, 2024
This media is not supported in your browser
VIEW IN TELEGRAM
Парсим данные из веб-страницы в Таблицу скриптами
Добрый День господа!
Я - Василий!
Сегодня небольшой, но полезный скрипт, о том, как спарсить данные с сайта на примере сайта о проведении Бильярдных турниров https://fairplay.host/.
Цель:
Собрать список участников указанных турниров и посчитать сколько раз каждый из участников участвовал в этих турнирах, для дальнейшего награждения лучших.
Решение:
1. Забираем с первого листа таблицы список ссылок на турниры:
const ss = SpreadsheetApp.getActive();
const spisokTurnirov = ss
.getSheetByName('Список турниров')
.getDataRange()
.getValues()
.slice(1);
2. В коде страницы находим ссылку на API и проходим по всем ссылкам в цикле, формируя список участников с указание их города:
var arr = [];
spisokTurnirov.forEach(x => {
x = x[0].match(/\d{4,}/);
const url = 'https://fairplay.host/api/tournament/details?id=' + x[0];
arr = [...arr, ...pars(url)]
})
3. Создаём объект и считаем количество участником и далее вставляем их на другой лист:
let spr = {}; //создаём пустой объект
arr.forEach(z => {
let iii = spr[z[0]];
!iii ? spr[z[0]] = 1 : spr[z[0]] = iii + 1; // тернарный оператор
});
Делайте копию таблицы, пробуйте, смотрите код, пишите вопросы, с радостью на них ответим!
Полный код в таблице с примером.
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Please open Telegram to view this post
VIEW IN TELEGRAM
December 13, 2024
Проектная диаграмма с выделением выходных отдельным цветом
(или не выходных, а определенных дней недели — тут вы по аналогии справитесь😉)
Создаем два правила условного форматирования с формулами и выбираем разные цвета.
Для рабочих:
Для выходных (уже не в общем виде, а с ячейками):
Таблица
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
(или не выходных, а определенных дней недели — тут вы по аналогии справитесь😉)
Создаем два правила условного форматирования с формулами и выбираем разные цвета.
Для рабочих:
=AND(первая дата с закреплением строки>=начало первого этапа с закреплением столбца; первая дата<=конец первого этапа;WEEKDAY(дата;2)>5)
Для выходных (уже не в общем виде, а с ячейками):
=И(D$1>=$B2;D$1<=$C2;ДЕНЬНЕД(D$1;2)<6)
Таблица
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
December 17, 2024
Наш чат, в котором мы уже 6 лет отвечаем на ваши вопросы: @google_spreadsheets_chat
ПС Кто-то напишет в личку и предложит помочь - не отправляйте деньги, вас обманут
Оглавление нашего канала, где перечислены все наши посты: Оглавление канала
ПС Кто-то напишет в личку и предложит помочь - не отправляйте деньги, вас обманут
Оглавление нашего канала, где перечислены все наши посты: Оглавление канала
Google Docs
Оглавление / канал Google Таблицы: t.me/google_sheets
December 19, 2024
Полезные чатики по теме
Помимо нашего чата советуем чат наших друзей по скриптам: @googleappsscriptrc
И по Таблицам: @google_sheets_pro
👾 Делитесь в комментариях чатами по Таблицам, Excel, программированию, добавим в пост
Помимо нашего чата советуем чат наших друзей по скриптам: @googleappsscriptrc
И по Таблицам: @google_sheets_pro
👾 Делитесь в комментариях чатами по Таблицам, Excel, программированию, добавим в пост
December 19, 2024
Клавиши для выделения столбца/строки
Ctrl + пробел — выделение всего столбца.
Первое нажатие: столбец в рамках диапазона (если активна ячейка какого-то диапазона/таблицы);
Второе: весь столбец листа.
Shift + пробел — выделение всей строки (в случае с таблицей сначала ее строки, затем строки всего листа)
Как запомнить? Клавиша Shift обычно длиннее. Как строка 🙂
❤️ Канал @google_sheets
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Ctrl + пробел — выделение всего столбца.
Первое нажатие: столбец в рамках диапазона (если активна ячейка какого-то диапазона/таблицы);
Второе: весь столбец листа.
Shift + пробел — выделение всей строки (в случае с таблицей сначала ее строки, затем строки всего листа)
Как запомнить? Клавиша Shift обычно длиннее. Как строка 🙂
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас
Please open Telegram to view this post
VIEW IN TELEGRAM
December 24, 2024