Как сделать склонение числительных на javascript.
Без склонения числительных пользователь может увидеть «8 мортышка(ек)» или «4 трамваев» и т.д. Это не красиво и усложняет процесс восприятия интерфейса.
Поэтому для многих стало нормой делать системы, которые бы склоняли числительные, так, чтобы пользователю было удобно читать интерфейс, так, как будто интерфейс – живое существо.
#snippet #JS
Без склонения числительных пользователь может увидеть «8 мортышка(ек)» или «4 трамваев» и т.д. Это не красиво и усложняет процесс восприятия интерфейса.
Поэтому для многих стало нормой делать системы, которые бы склоняли числительные, так, чтобы пользователю было удобно читать интерфейс, так, как будто интерфейс – живое существо.
#snippet #JS
Telegraph
Как сделать склонение числительных на javascript.
Без склонения числительных пользователь может увидеть «8 мортышка(ек)» или «4 трамваев» и т.д. Это не красиво и усложняет процесс восприятия интерфейса. Поэтому для многих стало нормой делать системы, которые бы склоняли числительные, так, чтобы пользователю…
clasp - The Apps Script CLI
Apps Script CLI, или clasp, это инструмент, позволяющий создавать, редактировать и развертывать проекты Apps Script локально. Он позволяет создавать и публиковать веб-приложения и надстройки для таких продуктов, как Таблицы, Документы, Формы и Слайды, из командной строки. Есть два способа разработки Apps Script: с помощью script.google.com или локально на вашем компьютере.
Инструкция
Вы также можете попробовать clasp в Gitpod, онлайн-среде IDE для GitHub
Apps Script CLI, или clasp, это инструмент, позволяющий создавать, редактировать и развертывать проекты Apps Script локально. Он позволяет создавать и публиковать веб-приложения и надстройки для таких продуктов, как Таблицы, Документы, Формы и Слайды, из командной строки. Есть два способа разработки Apps Script: с помощью script.google.com или локально на вашем компьютере.
Инструкция
Вы также можете попробовать clasp в Gitpod, онлайн-среде IDE для GitHub
Forwarded from St M
Для быстрого доступа к видосам , выкладываю ссылки на все плейлисты по всем сервисам на которые есть видео:
Google Sheets (Таблицы Гугл) Lessons: https://www.youtube.com/playlist?list=PLlHR3f8sb05BNZ_mWF0Qt2oqnHKwOSJRf
Фишки, Трюки и Лайфхаки Гугл Таблиц: https://www.youtube.com/playlist?list=PLlHR3f8sb05Cz8TH3s_wRAZkjVqGttZS4
Google Apps Script, Скрипты в Гугл таблицах: https://www.youtube.com/playlist?list=PLlHR3f8sb05B9n0jnXgS3yxn2CTQ3XOGS
Уроки по Гугл Формам
https://www.youtube.com/watch?v=OGHl45NwzhI&list=PLlHR3f8sb05DqlFCMfek-Nbje-9lJaDfY
Новости Google Таблиц.: https://www.youtube.com/playlist?list=PLlHR3f8sb05CDpAMfg6l5liYSUP35HOu2
Google Docs, Гугл Докс, Гугл документы - уроки!: https://www.youtube.com/playlist?list=PLlHR3f8sb05DV0FdQl1IC5zx14Ub52YF0
Google Sheets (Таблицы Гугл) Lessons: https://www.youtube.com/playlist?list=PLlHR3f8sb05BNZ_mWF0Qt2oqnHKwOSJRf
Фишки, Трюки и Лайфхаки Гугл Таблиц: https://www.youtube.com/playlist?list=PLlHR3f8sb05Cz8TH3s_wRAZkjVqGttZS4
Google Apps Script, Скрипты в Гугл таблицах: https://www.youtube.com/playlist?list=PLlHR3f8sb05B9n0jnXgS3yxn2CTQ3XOGS
Уроки по Гугл Формам
https://www.youtube.com/watch?v=OGHl45NwzhI&list=PLlHR3f8sb05DqlFCMfek-Nbje-9lJaDfY
Новости Google Таблиц.: https://www.youtube.com/playlist?list=PLlHR3f8sb05CDpAMfg6l5liYSUP35HOu2
Google Docs, Гугл Докс, Гугл документы - уроки!: https://www.youtube.com/playlist?list=PLlHR3f8sb05DV0FdQl1IC5zx14Ub52YF0
Получение периода в Зависимости от дня формирования
Мне иногда необходимо получить период отчета в зависимости от дня
когда я его формирую
То есть если допустим сегодня 1 число а день отчета 7 дней
то получу период Прошлый месяц
а если сегодня 10 то период будет с начала текущего месяца по сегодня
далее...
Мне иногда необходимо получить период отчета в зависимости от дня
когда я его формирую
То есть если допустим сегодня 1 число а день отчета 7 дней
то получу период Прошлый месяц
а если сегодня 10 то период будет с начала текущего месяца по сегодня
далее...
getLastDayOfMonth.png
108.4 KB
Последний день месяца
/**
* Последний день месяца
*
* @param {Number} year
* @param {Number} month
* @returns {Date}
*/
function getLastDayOfMonth(year, month) {
//0-11 Номера месяцев
let date = new Date(year, month + 1, 0);
return date.getDate();
}
formatToday.png
182.9 KB
Форматирование даты
/**
* Форматирование даты
* 31-10-20 при delim="-" и format="dd,mm,yy"
* @param {Date} today
* @param {string} [delim="."]
* @param {string} [format="dd,mm,yyyy"]
* @returns {string}
*/
function formatToday(today,delim=".",format="dd,mm,yyyy") {
var dd = today.getDate();
var mm = today.getMonth() + 1; //January is 0!
var yyyy = today.getFullYear();
var yy=[...yyyy.toString()].splice(2).join("")
if (dd < 10) { dd = '0' + dd }
if (mm < 10) { mm = '0' + mm }
eval(`var arr=[${format}]`)
today = arr.join(delim)// dd + '.' + mm + '.' + yyyy;
return today
}Получаем динамические области экрана
var getRangesByPattern=()=>{
// Исходные данные
var ss=SpreadsheetApp.getActiveSpreadsheet()
var sheet=ss.getSheetByName('Щоденник')
var dataRange=sheet.getDataRange()
var findArr=dataRange.getValues()
var findCol=1
var Cols=10
// Патерны и функция поиска
var startPr=q=>/Дата приймання/i.exec(q[findCol])
var endPr=q=>/Всього.*/i.exec(q[findCol])
var find=(a,pred)=>a.findIndex(pred)
//Получаем диапазоны с листа
var headerOrderN=find(findArr,startPr)
var headerOrder=sheet.getRange(1, 2,headerOrderN,Cols)
var headerMain=sheet.getRange(headerOrderN+1, 2,1,Cols)
var mainN=find(findArr,endPr)
var main=sheet.getRange(headerOrderN+2, 2,mainN-headerOrderN-1,Cols)
var footer=sheet.getRange(mainN, 2,dataRange.getLastRow()-mainN-1,Cols)
console.log(main.getA1Notation())
return {headerOrder,headerMain,main,footer}
}
Volond Apps
Получаем динамические области экрана var getRangesByPattern=()=>{ // Исходные данные var ss=SpreadsheetApp.getActiveSpreadsheet() var sheet=ss.getSheetByName('Щоденник') var dataRange=sheet.getDataRange() var findArr=dataRange.getValues() var findCol=1 var…
image_2020-11-03_15-19-42.png
41.8 KB
"Псевдоразделение" в Ячейке Google Sheet+Стрелки
="↙️ f"&char(10)&Rept("-";10)&char(10)&"b ↘️"
#formulaУдалили лист и слетели все формулы...HELP ME‼️
не беда: ФОРМУЛЫ можно восстановить ... 🚑
не беда: ФОРМУЛЫ можно восстановить ... 🚑
function myFunction() {
var nameDelSheet = "Меня удалили"
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets()
var range = sheets.filter(sh => sh.getName() != nameDelSheet).map(sh => {
var range = sh.getDataRange()
range.setFormulas(range.getFormulas())
}Telegraph
Удалили лист и слетели все формулы...HELP ME‼️
Решение
Запускаем функцию "фоново"
Оригинал: Bruce Axtens
В последнее время я пробиваю 6-минутную стену таймаута в Apps Script.
Моя проблема заключается в том, чтобы поместить имена функций, которые я хочу запускать в фоновом режиме, в свойство скрипта, а затем извлекать их каждый раз при срабатывании таймера. Это, конечно, ограничено одной функцией в минуту. Во 2 части я покажу, как увеличить это значение до 4 в минуту, и, возможно, на любую долю минуты (с помощью устанавливаемых триггеров .)
Кроме того, это должны быть функции, которые не требуют каких-либо параметров и могут работать в фоновом режиме.
Читать полностью...
Оригинал: Bruce Axtens
В последнее время я пробиваю 6-минутную стену таймаута в Apps Script.
Моя проблема заключается в том, чтобы поместить имена функций, которые я хочу запускать в фоновом режиме, в свойство скрипта, а затем извлекать их каждый раз при срабатывании таймера. Это, конечно, ограничено одной функцией в минуту. Во 2 части я покажу, как увеличить это значение до 4 в минуту, и, возможно, на любую долю минуты (с помощью устанавливаемых триггеров .)
Кроме того, это должны быть функции, которые не требуют каких-либо параметров и могут работать в фоновом режиме.
Читать полностью...
This media is not supported in your browser
VIEW IN TELEGRAM
Подсветка значений которые округлены с помощью пользовательского формата
Иногда нужно понять какие числа были округлены
ссылка на таблицу с кодом
ссылка на исходный код
Иногда нужно понять какие числа были округлены
ссылка на таблицу с кодом
ссылка на исходный код
runSelectionAll.png
215.3 KB
**
* Пакетное выполнение функции в выделенном диапазоне
* Функция принимает ячейку как RANGE
*
* @param {Function} fn Функция которая будет исполняться над каждой ячейкой диапазона
*/
* Пакетное выполнение функции в выделенном диапазоне
* Функция принимает ячейку как RANGE
*
var fn=(cell)=>console.log(cell.getA1Notation())
* runSelectionAll(fn)* @param {Function} fn Функция которая будет исполняться над каждой ячейкой диапазона
*/
function runSelectionAll(fn){
const ss = SpreadsheetApp.getActiveSpreadsheet()
const sheet = ss.getActiveSheet()
var selection = sheet.getSelection();
var ranges = selection.getActiveRangeList().getRanges();
ranges.forEach(range=>{
var res=expandA1Notation([range.getA1Notation()])
var rangeList=sheet.getRangeList(res[0]).getRanges()
rangeList.forEach(fn)
})
}Захотелось получать ссылку на регион как в Excel
Задаем ссылку вида:
[root\Имя Папки\Имя таблицы]'Имя листа'!А1
Вот что получилось:
Задаем ссылку вида:
[root\Имя Папки\Имя таблицы]'Имя листа'!А1
Вот что получилось:
Telegraph
Захотелось получать ссылку на регион как в Excel
Задаем ссылку вида:
Пишем хеш-таблицу на джаваскрипт
Что такое Хеш таблица?
Это структура данных, которая по ключу хранит какое-либо значение.
читать
Что такое Хеш таблица?
Это структура данных, которая по ключу хранит какое-либо значение.
читать
Telegraph
Пишем хеш-таблицу на джаваскрипт
Источник: Определение Что такое Хеш таблица? Это структура данных, которая по ключу хранит какое-либо значение. Внимательный зритель может спросить в чем же отличие от Ассоциативного массива. Основное отличие в том, что это Хеш-таблица — это неупорядоченный…