#google-apps-script #getvalue
#google-apps-script #google-sheets #google-sheets-формула #getvalue
Вопрос:
У меня довольно большая проблема. Если я читаю ячейки столбцов с помощью цикла for и диапазона (r, c.).GetValue() (то же самое для чтения с диапазоном (r,c,m,1).getValues() ) значения не считываются. Я получил #ERROR!. Я считываю значения ячеек, которые являются ссылками на другие листы, а другие — с некоторыми вычислениями if, round и plus / minus.
Как вы, возможно, видите на рисунке, у меня есть фиксированное тестовое значение для некоторых столбцов (номер 2, 3, 4, 5), и они всегда читаются нормально.
В исходном коде я добавил 3 строки, которые читают фиксированные введенные значения (2,3,4,5).
Любое предложение, почему, поскольку у меня есть несколько сценариев с чтением значений ячеек, но до сих пор ничего подобного не происходило.
Спасибо!
Комментарии:
1. Это они
=googlefinance()
или=import*()
ячейки?2. Не могли бы вы предоставить копию электронной таблицы, над которой вы работаете, без конфиденциальной информации?
Ответ №1:
С уважением,
Если я правильно понимаю, вы хотели бы получить значения из ячеек, которые имеют динамические значения (вычисляемые или ссылочные).
Это может привести к сбою, если вы используете range.getValue()
, поскольку в ячейке нет фактического значения. Вы можете попробовать использовать range.getDisplayValues()
вместо этого, чтобы получить отображаемое значение. Это задокументировано здесь .
Если вы делаете это, ваш код будет выглядеть следующим образом :
for(var ii=0; ii < iDNRows; ii )
{
i0mik_od_zacetka = sIzracuni.getRange(ii StartRowData, iStartColumnData).getDisplayValue();
.
.
.
}
Или вы можете сделать .getDisplayValues()
:
values = sIzracuni.getRange(startrow,startcol,rownum,colnum).getDisplayValues();
Прокомментируйте, если я неправильно понял ваш вопрос.