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を使おうとしてはまりました。
エラー備忘録に。