如何在不指定范围名称的情况下选择一系列单元格?

Dou*_*Fir 2 google-sheets google-apps-script

我想使用应用程序脚本选择单元格 C29:Z50 作为变量。我宁愿不必创建命名范围(但如果需要,我可以)。

我的目标是在可以使用内置功能的颜色之外创建一些自定义格式。因此,如果单元格 B27 = "Transactions" 则将 C29:Z50 格式化为数字,否则将 Z29:Z50 格式化为美元货币。

所以我不需要单元格的值,只需要单元格组作为一个变量,如果逻辑我可以应用它。

我在这里阅读文档。

获取数据范围()

返回与存在数据的维度相对应的范围。这在功能上等同于创建一个由 A1 和 (Range.getLastColumn(), Range.getLastRow()) 界定的范围。

文档中的示例抓取了整个选项卡,但我只想要有问题的工作表的一个子集。

我试过:

var currency_range = ss.getDataRange(C29, Z50); //"Reference Error. "C29" is not defined."

var currency_range = ss.getDataRange(C29:Z50); // "Missing ) argument list"
Run Code Online (Sandbox Code Playgroud)

如何“获取”单元格范围,以便以后可以根据条件编辑它们的格式?

AJP*_*rez 5

您可以使用Spreadsheet.getRange()。例如,这应该有效:

var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("...");
var currencyRange = ss.getRange("C29:Z250");
Run Code Online (Sandbox Code Playgroud)

好吧,实际上我正在使用这个Sheet.getRange()方法,但在您的情况下它们应该是相同的。它提供了更多声明所需范围的方法,例如getRange(row, column, numRows, numColumns),这对您也很有用。