这里有两个基于直通改变字体颜色的脚本,两者都有效。 - 第一个可以自定义触发, - 第二是onEdit。
onEdit有我的偏好,因为它可以立即自动化事物,但是当一个单元格的值正在通过是或否时,onEdit看不到变化。
那么是否有可能为fontstylechanges设置onEdit触发器?
function colorlinethrough() {
var ss = SpreadsheetApp.getActiveSpreadsheet(); // Get spreadsheet
var sheet = ss.getSheets()[0]; // Get first Sheet
var range = sheet.getDataRange(); // Get cells
var data = range.getValues(); // Get the cell values
for (var i in data) {
var editrange = sheet.getRange(parseInt(i)+1,2);
if (editrange.getFontLine() == "line-through") {
editrange.setFontColor("#CCCCCC");
}
else {
editrange.setFontColor("#000000");
}
}
};
function onEdit(e) {
var ss = e.source; // Get spreadsheet
var range = ss.getActiveRange();
if (range.getFontLine() == "line-through") {
range.setFontColor("#CCCCCC");
}
else {
range.setFontColor("#000000");
}
};
也将这个问题放在g +社区https://plus.google.com/104787958270362345970/posts/GTdBoTZR3YF
上答案 0 :(得分:4)
Spreadsheets有一个onChange
事件可能会在这里发挥作用。 onEdit
表示数据发生变化,onChange
表示电子表格UI本身发生变化时。试一试。
https://developers.google.com/apps-script/understanding_events