#javascript #google-apps-script #google-sheets
#javascript #google-apps-script #google-sheets
Вопрос:
Предположим, что в качестве скрипта в Google Таблицах используется следующая функция:
function putData()
{
return "foo"
}
Если я сейчас вызову эту функцию в ячейке, она отобразит «foo»:
A B C D
1 =putData()
Результаты
A B C D
1 foo
Но что мне нужно, так это возвращать значения и в 3 ячейках справа:
A B C D
1 foo bar baz bax
Теперь я мог создать 4 функции и вызывать каждую из них в отдельной ячейке.
Но я хотел бы заполнить 4 ячейки одним вызовом функции:
function putData()
{
return "foo,bar,baz,bax"
}
Но это, очевидно, не работает. Это просто строка A1
. Итак, мой вопрос: как мне нужно отформатировать return
, чтобы заполнить ячейку, в которой вызывается функция, плюс 3 соседние ячейки справа?
Ответ №1:
Решение 1:
Вы можете вернуть массив из массива строк:
function putData()
{
return [["foo","bar","baz","bax"]];
}
а затем напрямую использовать =putData()
:
Решение 2:
Вы можете вернуть массив строк:
function putData()
{
return ["foo","bar","baz","bax"];
}
и тогда вы можете использовать: =Transpose(putData())
чтобы получить их в ряд:
Решение 3:
или вы можете использовать свое текущее решение:
function putData()
{
return "foo,bar,baz,bax";
}
а затем разделить значения =split(Transpose(putData()),",")
: