2

Google スプレッドシートで動作する簡単なスクリプトを作成しようとしています。スプレッドシートは Google フォームから入力を取得するため、スプレッドシートには次のような一連の値があります。

http://i43.tinypic.com/2losg5.jpg

私の目標は、ユーザーが指定した範囲内の各フォーム入力から数値を取り除き、すべての数値を追加して単一のスコアを提供するスクリプトを作成することです。したがって、たとえば、ユーザーが=sumColumns(H2:K2)セルに入力すると、スコアの合計が返されます (私が投稿したサンプル スクリーンショットでは、 , の結果が返され3+3+0+3ます9)。

これを行うために私が書いたコードは次のとおりです。

function sumColumns(values) {
  var sum = 0;
  for(var i = 0; i <= values.length; i++){
    var input = values[0][i];
    var x = input.toString();
    var y = x.charAt(0);
    var num = parseInt(y);
    sum += num;
  }
  return sum;
}

問題は、2 つの値を加算しているようにしか見えないことです。そのため=sumColumns(H2:K2)、スプレッドシートにセルを入力すると、 のみが返されます6。また、3 行目で から に変更すると、i <= values.length数字i < values.lengthが 1 つしか追加されないため3、結果として得られます。Google スプレッドシートの値が関数に渡される方法を誤解していると思いますが、完全に機能させることができませんでした。助けていただければ幸いです。

4

2 に答える 2