Функция не запускается
Я пытаюсь использовать функцию, чтобы получить шестнадцатеричный код фона ячейки и объединить его с текстом, содержащимся в той же ячейке.
то есть в sht1.cell(A1)
Я набираю "Привет" с красным фоном, я бы в sht2.cell(A1)
следующий текст: "[#FF0000]Hello"
Я пытался это:
function getHexValue(range) {
return SpreadsheetApp.getActiveSheet().getRange(range).getBackground();
}
но это не всегда работает, особенно если я делюсь файлом. Я пытался настроить некоторые триггеры, используя события редактирования, изменения или открытия, но id не обновляется, это то, что я пытался сделать.
Любое предложение?
Если я наберу: =gethexvalue("A5")
Я получаю код цвета, если я набираю формулу в другую ячейку или другой лист и обновляю значения или перезагружаю лист, который не работает.
1 ответ
В вашей формуле =gethexvalue("A5")
, "A5" - это текст, а не динамический диапазон.
Прочтите Как передать диапазон в пользовательскую функцию в таблицах Google? для полного обсуждения и 11 разных ответов. Это сам по себе возможный дубликат передачи ссылок на ячейки в функции электронных таблиц.
это =getHexValue(ADDRESS(ROW(A1), COLUMN(A1)))&A1
динамично Он вернется:
"# Ff0000Hello"
, Если вам нужен гекс в верхнем регистре, используйте UPPER с getHexvalue.