有没有办法在运行时调试Spreadsheet应用程序脚本?

时间:2012-09-11 15:18:14

标签: google-apps-script google-sheets

有没有办法在运行时调试电子表格谷歌应用程序脚本? 只是通过脚本编辑器运行它是没用的,因为我需要调试的函数将触发器事件作为参数。

3 个答案:

答案 0 :(得分:1)

简单的答案是否定的 - 您无法在表单提交上进行调试。 但是,您可以在onSubmit代码中编写Logger.log语句,然后将日志内容写入另一个电子表格或工作表,稍后您可以查看。

答案 1 :(得分:1)

不确定您的问题,但请尝试一下。

function get_color(e) {

  //var data = e.parameter.nameLabel

  var data = red;

  if (data == red){
    //...
  } else {
    //...
  }
}

因此您可以使用调试器测试脚本而不考虑事件

我希望它可以帮到你!

答案 2 :(得分:1)

这是一个可以测试表单提交触发器功能的函数,取自How can I test a trigger function in GAS?

function test_onFormSubmit() {
  var dataRange = SpreadsheetApp.getActiveSheet().getDataRange()
  var data = dataRange.getValues();
  var headers = data[0];
  // Start at row 1, skipping headers in row 0
  for (var row=1; row < data.length; row++) {
    var e = {};
    e.values = data[row];
    e.range = dataRange.offset(row,0,1,data[0].length);
    e.namedValues = {};
    // Loop through headers to create namedValues object
    for (var col=0; col<headers.length; col++) {
      e.namedValues[headers[col]] = e.values[col];
    }
    // Pass the simulated event to onFormSubmit
    onFormSubmit(e);
  }
}