GAS スプレッドシートの範囲を指定して値を挿入する

GAS スプレッドシートの範囲を指定して値を挿入する

GAS(Google Apps Script)で、スプレッドシートの範囲を指定して値を挿入する手順を記述してます。「setValues」に二次元配列で値を指定することで可能です。

環境

  • OS windows11 home
  • ブラウザ chrome 109.0.5414.120

範囲を指定して値を挿入

範囲を指定して値を挿入するには、「setValues」を使用します。

Range.setValues( 配列 )

以下のシートの、「B3」~「C4」に値を挿入してみます。

コードを実行します。

function myFunction() {

  // GASを作成したスプレッドシート
  let spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

  // スプレッドシートの最初のワークシートを取得
  let sheet = spreadsheet.getSheets()[0];

  // 範囲を指定
  let range = sheet.getRange("B3:C4");

  const values = [
    ["aaa", "ccc"],
    ["bbb", "ddd"]
  ];

  // 値を挿入
  range.setValues(values)

}

挿入されていることが確認できます。

指定した範囲と配列の数が異なる場合は、エラーとなります。

function myFunction() {

  // GASを作成したスプレッドシート
  let spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

  // スプレッドシートの最初のワークシートを取得
  let sheet = spreadsheet.getSheets()[0];

  // 範囲を指定
  let range = sheet.getRange("B3:C4");

  const values = [
    ["aaa", "ccc", "eee"],
    ["bbb", "ddd"]
  ];

  // 値を挿入
  range.setValues(values)
  // エラー	
  // Exception: The number of columns in the data does not match the number of columns in the range. 
  // The data has 3 but the range has 2.

}

実行結果