我写了一个自定义函数,它返回一个简单的数组。(这是对多张纸的简单脏3D查找)。如果有帮助,请参见以下代码:
function get3DCellValues(startSheet, endSheet, cell) {
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
var sum = 0;
var cellValues = [];
for (var i = (startSheet); i < endSheet; i++ ) {
var sheet = sheets[i];
var val = sheet.getRange(cell).getValue();
cellValues.push(val);
}
//Logger.log(cellValues);
return cellValues;
}
问题是当我返回cellValues时,值沿列向下溢出。但是我希望它在行中向右溢出。有办法吗?谢谢。
Google指南对自定义函数返回值的说法如下:
每个自定义函数都必须返回一个要显示的值,例如:
如果自定义函数返回一个值,则该值将显示在调用该函数的单元格中。如果自定义函数返回二维值数组,则只要这些单元格为空,这些值就会溢出到相邻单元格中
但这似乎对我没有帮助。
数组中的每个条目代表一行。例如[[1,2],[3,4]]
将是两行[1,2]
和[3,4]
。
[1,2,3,4]
被解释为[[1],[2],[3],[4]]
,因此它是4行,每行一个值。
如果只想写一行,就可以写[[1,2,3,4]]
。
因此,您必须像这样更改代码
...
var cellValues = [[]];
...
cellValues[0].push(val);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句