我对在 Google Scripts 中创建自定义函数比较陌生。
我需要能够将范围数组传递给函数。
如果我的处理方式不正确,请告诉我。
当我在 Google 表格中将=ConcatEach(["A1:A2","B1:B2"],"$"])
其引用为(不带引号)时,出现解析错误。
(此外,这些值是任意的。我知道美元符号在值之前。)
无论如何,这就是我所拥有的:
function ConcatEach(rangeString, concatString)
{
//var rangeString = ["A1:A2","B1:B2"];
//var concatString = "$";
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var rangeValues=[];
for(i=0;i<rangeString.length;i++)
{
var range = sheet.getRange(rangeString[i]);
rangeValues.push(range.getValues());
}
//Logger.log(rangeValues);
for(i=0;i<rangeValues.length;i++)
{
for(j=0;j<rangeValues[i].length;j++)
{
if(rangeValues[i][j] != "")
{
rangeValues[i][j] = rangeValues[i][j] + concatString;
}
}
}
return rangeValues;
}
任何帮助将不胜感激!谢谢!
你可以rangeString
用逗号作为字符串传递:
"A1:A2,B1:B2"
然后使用JavaScript String split() 方法:
var array = rangeString.split(",");
Logger.log(array); // you'll get array ['A1:A2', 'B1:B2']
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句