LoginSignup
0
0

【GASエラー】 Exception: The parameters (number) don't match the method signature for SpreadsheetApp.Range.setValues.

Posted at

getRange().setValues(val)

【GAS】setValues関数でパラメーターの設定ミスにより生じたエラー

Exception: The parameters (number) don't match the method signature for SpreadsheetApp.Range.setValues.

上記のエラーメッセージが表示されました。

原因となった箇所

setValues.gs
    let setVal = '1,2,3,4';
    let trgRange = sheet.getRange(1, 1, 4, 1);
    trgRange.setValues(setVal);

変数setValの設定方法が間違っていました。

エラー解決方法

setValues.gs
    let setVal = [[1],[2],[3],[4]];
    let trgRange = sheet.getRange(1, 1, 4, 1);
    trgRange.setValues(setVal);

setValuesは二次元配列でスプレッドシートにデータをセットします。
スプレッドシートのセルは二次元配列で表現されます。
A1⇒[0][0]
B5⇒[1][4]

今回は A1 ( [0] [0] )から A4 ( [0] [3] )の範囲に値をセットしました。

それを配列にすると [ [1] , [2] , [3] , [4] ] になります。

おわりに

GASでsetValuesを使おうとしてはまりました。
エラー備忘録に。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0