Так а как же получить аргумент, который передан в функцию? Просто: берем активную ячейку, вытаскиваем формулу как текст и регуляркой достаём то, что внутри скобок. Вуаля 👇 function воскресенье(a) { // Получаем активную таблицу const sh = SpreadsheetApp.getActive(); // Берём адрес активного диапазона (в котором введена формула), например "A1" const rangeA1 = sh.getActiveRange().getA1Notation(); // По адресу получаем саму формулу из ячейки, где стоит пользовательская функция // Например: "=воскресенье(C1:C2)" const formula = sh.getRange(rangeA1).getFormula(); /* Возвращаем строку с тремя частями: 1) сама формула, как она написана в ячейке 2) переданный аргумент (вытаскиваем всё, что внутри скобок с помощью RegExp) формула.match(/\((.+?)\)/)?.[1] → ищет первую группу в скобках ?. — это оператор "optional chaining", чтобы не было ошибки, если нет совпадения 3) значения, которые реально пришли в функцию (в параметр a) */ return 'формула: ' + formula + '\n' + 'переданный аргумент: ' +
Так а как же получить аргумент, который передан в функцию
31 августа 202531 авг 2025
1
1 мин