我试图用我发现的这个脚本制作几个按钮。因为我想要在不同单元格中输出几个按钮,所以我尝试添加一个变量,我可以在将该函数添加到绘图时设置该变量。然而,这似乎不起作用,我不知道该怎么做。 因此,如果我设置像" B2" in var activeRange = ss.getRange(DesiredCell); 但是当我尝试使用我得到的变量时,无法找到脚本函数incrementCellValuesByOne()"
我使用的脚本
function incrementCellValuesByOne(DesiredCell) {
// Increments the values in all the cells in the active range (i.e., selected cells).
// Numbers increase by one, text strings get a "1" appended.
// Cells that contain a formula are ignored.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var activeRange = ss.getRange(DesiredCell);
var cell, cellValue, cellFormula;
// iterate through all cells in the active range
for (var cellRow = 1; cellRow <= activeRange.getHeight(); cellRow++) {
for (var cellColumn = 1; cellColumn <= activeRange.getWidth(); cellColumn++) {
cell = activeRange.getCell(cellRow, cellColumn);
cellFormula = cell.getFormula();
// if not a formula, increment numbers by one, or add "1" to text strings
// if the leftmost character is "=", it contains a formula and is ignored
// otherwise, the cell contains a constant and is safe to increment
// does not work correctly with cells that start with '=
if (cellFormula[0] != "=") {
cellValue = cell.getValue();
cell.setValue(cellValue + 1);
}
}
}
}
我这样做完全错了吗?
答案 0 :(得分:1)
您无法将具有变量的函数设置为绘图。 您只能设置一个功能。
2个解决方案: - 为每个绘图创建多少个函数 - 在单元格中创建一个列表,其中包含要作为参数传递的单元格的名称。在脚本开始时,您检查此单元格中的值以获取单元格值。
var DesiredCell = ss.getActiveSheet().getRange("C1").getValue(); //I imagine the list of cell is in C1, to customize.
因此,首先使用脚本,在下拉列表中选择单元格值,然后单击绘图。