我正在尝试创建一个公式,使当前单元格具有输入单元格的颜色。
这是我尝试过的:
function getCellColor(input) {
return input.getBackground();
}
我知道返回该值将不起作用,即使返回该值也只会返回实际值,而不执行setBackground方法,但我真的迷失了这一点,不知道如何进行。
输入被解析为值而不是“单元格”对象,但我不知道这样做的正确方法。
答案 0 :(得分:1)
如用户所述,自定义函数具有局限性,其中包括电子表格[1]中的设置方法。您可以轻松创建一个菜单,该菜单将运行特定功能,您可以在其中使用所有Apps Script方法。
这是一段代码,它将创建一个菜单[3],并且单击时,colorCell()函数将从B5单元格中获取背景色并将其设置为活动单元格:
function onOpen() {
SpreadsheetApp.getUi() // Or DocumentApp or SlidesApp or FormApp.
.createMenu('Actions')
.addItem('Go to Cell', 'colorCell')
.addToUi();
}
function colorCell() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");
var cell = SpreadsheetApp.getActiveRange();
var color = sheet.getRange("B5").getBackgroundColor();
//Sets color to the cell
cell.setBackground(color);
}
我留下了SpreadsheetApp文档[2]。
[1] https://developers.google.com/apps-script/guides/sheets/functions#advanced
[2] https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app#getactiverange