Google表格:未找到范围

时间:2015-03-20 05:30:56

标签: google-sheets

我是Google Sheets脚本的新手,我无法理解为什么会收到此错误:未找到范围(第4行,文件"代码")。我已经跟踪了https://developers.google.com/apps-script/guides/sheets/functions#creating_a_custom_function

中的所有内容

这是我的代码:

function getBgColor(input) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];
  var range = sheet.getRange(input);
  return range.getBackground();
}

我感谢所有的帮助。

1 个答案:

答案 0 :(得分:0)

如果您的输入范围只有一个单元格,那么您的代码应该没问题,至少如果您将其作为字符串传递。 = getBgColor(" D1&#34)。 但是,如果你想传入一个范围,我认为你必须循环到该范围才能获得整个范围的颜色。所以你需要这样的东西(未经测试):

function getBgColor(input) {
var bgs = SpreadsheetApp.getActiveSheet().getRange(input).getBackgrounds(),
colors = [];
for(var i = 0; i < bgs.length; i++){
colors.push(bgs[i]);
}
return colors;
}

这应该为您提供一个范围,其中包含您传递范围的所有背景颜色。如果您想在一个单元格中使用这些颜色,请使用:return colors.join(&#34;,&#34;)。如果你想只返回独特的颜色,也有办法做到这一点..

看看这有帮助吗?