1
我正在Google數據表中執行自定義功能。我調用該函數是這樣的:將範圍發送到自定義功能
=foo(A1:A3)
該函數聲明爲:
function foo(input) {
return input.length
}
,並返回1.什麼是錯的?我需要做什麼才能返回input
範圍的長度?
我正在Google數據表中執行自定義功能。我調用該函數是這樣的:將範圍發送到自定義功能
=foo(A1:A3)
該函數聲明爲:
function foo(input) {
return input.length
}
,並返回1.什麼是錯的?我需要做什麼才能返回input
範圍的長度?
如果調用與參考一單元格範圍的作爲參數(像
=DOUBLE(A1:B10)
)你的功能,參數將是該單元的值的二維陣列。例如,在下面的屏幕截圖中,=DOUBLE(A1:B2)
中的參數被Apps腳本解釋爲double([[1,3],[2,4]])
。
所以你看到1
因爲只有一個在你的射程行。看看有多少細胞是該行中:
function foo(input) {
return input[0].length;
}
...這應該給你3
,因爲傳遞給函數的數組應該是這樣的:
[valueOfA1, valueOfA2, valueOfA3]
我不知道如果Google Spreadsheets中可能有空的範圍,但如果它們是的話,您可能需要添加一個警衛:
function foo(input) {
return input && input[0] && input[0].length;
}
啊!!!非常感謝......這是一個狡猾的問題,但我閱讀了你展示的文件,並且沒有正確理解它。 – 2015-02-23 12:22:47
@JuanPabloCabreraBorges:De nada! :-) – 2015-02-23 13:15:57