Есть ли функция, которая скажет, имеет ли конкретная ячейка простое (введенное вручную) значение или имеет формулу?
google-sheets
formulas
epeleg
источник
источник
isFormula2("A1")
. поэтому я попытался создать новую его версию следующим образом:function isFormula2(cell) { return (cell.getFormula())!=""; }
и я ожидал, что она будет вызываться с использованием,isFormula2(A1)
но это, похоже, не работает, и при попытке отладки это выглядитcell
как неопределенное ... любая идея, почему это так и если что-то может быть изменилось, так что будет работатьf(A1)
вместоf("A1")
?isFormula(a1)
? (в MS Excel это была бы функция, которая получает параметр диапазона)Короткий ответ
Используйте встроенную функцию ISFORMULA () .
Справочная информация и объяснение
Мне кажется, я только что обнаружил недокументированную формулу в новых Google Sheets. @Pnuts говорил, что
CELL
формула не работает (частично потому, что она доступна только в новых Google Sheets), поэтому я скопировал код в новый Google Sheet. Возникла ошибка, сообщающая, что моя (пользовательская) формула принимает только один аргумент, а не два:Переименование
isFormula
во что-то еще, привело к работающей пользовательской функции. После этого я создал еще один Google Sheet и использовалisFormula
формулу. Формула не отображается в автозаполнении, но она работает:Таким образом, если формула доступна в новых листах Google, то это будет лучший ответ:
формула
Заметка
Доступно только в новых Google Sheets. Я попросил нескольких других людей подтвердить новую формулу, и она подтвердилась. Поскольку он недокументирован, его реализация неуверенна и может исчезнуть.
ARRAYFORMULA
Не работает при использовании этой новой формулы.пример
Я создал файл примера для вас: isFormula
источник
Похоже, есть скрытая встроенная функция
ISFORMULA()
от Google. Я понял, когда я удалил свою собственную функцию и все еще работал. Я попробовал это в новой электронной таблице и все еще работает. Нет проблем с кешем.источник