我了解条件格式,但我希望能够使用公式指定颜色。我正在设计一些颜色淡入淡出算法,并计算电子表格中的 RGB 值。我想将 3 个 R、G 和 B 值放入各列中,并让第四列显示颜色。
最佳答案
不使用公式,Apps 脚本上的 onEdit
可以做到这一点,但效率不高:
function componentToHex(c) {
var hex = c.toString(16);
return hex.length == 1 ? "0" + hex : hex;
}
function rgbToHex(r, g, b) {
return "#" + componentToHex(r) + componentToHex(g) + componentToHex(b);
}
function onEdit(){
var RGBVals = SpreadsheetApp.getActiveSheet().getDataRange().getValues(),
backSet = [],
currLin;
for( lin in RGBVals ){
currLin = RGBVals[ lin ];
backSet.push([rgbToHex(currLin[0], currLin[1], currLin[2])]);
}
SpreadsheetApp.getActiveSheet().getRange(1, 4, backSet.length).setBackgrounds(backSet);
}
注意:R、G、B 位于 A、B、C 列中,从第 1 行开始。
关于google-apps-script - 是否可以使用公式设置谷歌电子表格单元格的背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30036012/