是否有可能让onEdit触发fontstylechanges? (线通)

时间:2013-10-05 16:07:13

标签: google-apps-script triggers google-sheets

这里有两个基于直通改变字体颜色的脚本,两者都有效。 - 第一个可以自定义触发, - 第二是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

1 个答案:

答案 0 :(得分:4)

Spreadsheets有一个onChange事件可能会在这里发挥作用。 onEdit表示数据发生变化,onChange表示电子表格UI本身发生变化时。试一试。

https://developers.google.com/apps-script/understanding_events