Google Checkbox脚本介绍

时间:2018-08-10 17:45:23

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

我想知道是否有人可以更详细地解释此脚本的实际作用(定义var等)。我知道该脚本将根据选中的复选框(单元格)隐藏并显示行。但是我很难弄清楚//align the trigger//crude helper funcreturn v[0]在做什么,最后是status.forEach(showHideRow(;

function onEdit(e) {

// Replace with the name of your sheet
var sheetName = 'NameofYourSheet';

// Align the trigger to the 4 checkboxes
if (e.source.getActiveSheet().getName() != sheetName 
    || e.range.rowStart < 6 || e.range.rowStart > 11 || e.range.columnStart != 3) {
    return;
}

// Get checkbox values
var sh = SpreadsheetApp.getActive().getSheetByName(sheetName),
    status = sh.getRange('C7:C10').getValues();

// Crude helper func
function showHideRow(v, i) {
    // [[row, numberRows]]
    var rows = [[11,3],[14,3],[17,3],[20,2]];

    return v[0]
           ? sh.showRows.apply(sh, rows[i])
           : sh.hideRows.apply(sh, rows[i])
};

status.forEach(showHideRow);

一如既往,很高兴回答任何问题,感谢所有帮助!

1 个答案:

答案 0 :(得分:2)

  

注意:我认为这个问题过于笼统,因为它涵盖了四个问题。

简单的回答是,Google Apps脚本基于JavaScript,因此花一些时间来学习JavaScript以及有关问题的代码,尤其是有关以下方面的代码可能是个好主意:

  1. 声明,
  2. 行终止符
  3. if语句
  4. 表达式和条件,
  5. 条件(三元)运算符
  6. Array.prototype.forEach