我在Google文档中有一个表格(没有工作表)。我创建了一个自定义菜单,它将有一个选项列表。目的是当用户选择其中一个选项时,它将更改活动单元格的背景颜色(由光标所在的位置确定)。我尝试了下面的代码,它没有错误地运行,但是它不会更改背景色。有任何想法吗?谢谢!
function onOpen() {
var ui = DocumentApp.getUi();
ui.createMenu('Change Colors')
.addItem('Low', 'LowFunction')
.addToUi();
}
function LowFunction() {
DocumentApp.getUi()
var document = DocumentApp.getActiveDocument();
var SelectedCell = document.getCursor().getElement();
var range = SelectedCell.setBackgroundColor('#ffffff');
}
有关其他信息,请添加以下代码行:
var SelectedCell = document.getTables()[1].getCell(1,0).setBackgroundColor('#000000');
它将更改特定单元格的背景颜色...但是我只需要此代码即可更改当前所选单元格的颜色。
答案 0 :(得分:2)
如果我的理解是正确的,那么该修改如何?
document.getCursor().getElement()
的父级。因为当光标停留在单元格中时元素类型是一个段落。function LowFunction() {
var document = DocumentApp.getActiveDocument();
var cursor = document.getCursor().getElement();
var SelectedCell = cursor.getParent();
if (SelectedCell.getType() == DocumentApp.ElementType.TABLE_CELL) {
SelectedCell.asTableCell().setBackgroundColor("#808080");
}
}
如果我误解了您的问题,而这不是您想要的结果,我深表歉意。