Google电子表格自定义功能#NUM!错误

时间:2014-07-28 17:13:23

标签: google-apps-script google-sheets

我做了这个自定义功能:

  function somaDias(range, days) {
     var soma = 0;

      for(i=0; i<days; i++){
          soma = soma + parseFloat(range[0][i])
      }

      return soma;
      }

我用它来计算范围内的值。范围是工作表中的一行,具有给定的预算,一个月中的每一天。我必须根据当天的数值求和。即:如果这是第14个,我需要总结第14个第一个值。

到目前为止一切顺利。该功能有效。问题是,如果范围有一个空单元格,则返回#NUM!。我想我应该在for循环中放入一个if条件,但我不知道如何......

我应该怎么做这个功能使用空单元格?

2 个答案:

答案 0 :(得分:1)

您可以使用IF THEN的简化版,如下所示

  function somaDias(range, days) {
    var soma = 0; 
    for(i=0; i<days; i++){
      soma += range[0][i]!=''? parseFloat(range[0][i]):0;
      }       
    return soma
    }

答案 1 :(得分:0)

可以像这样检查空单元格:

function somaDias(range, days) {
  var soma = 0;

  for(i=0; i<days; i++){
    var v = range[0][i];
    if (v == "") {
      continue;
    }

    soma += parseFloat(v);
  }

  return soma;
}
相关问题