Googleスプレッドシートのセル範囲を操作するスクリプト

セル範囲を取得する場合はgetRangeを使います。
取得した範囲の値を配列として取得する場合はgetValuesを使います。
こうなれば通常のJavaScriptの手法が使えます。
一方、セル範囲に値をセットする場合はsetValuesを使います。配列を使うので処理がはやいです。
下のサンプルではセル範囲「A1:E5」について各セルの文字列の「abc」を「def」に置換しています。

function myFunction() {
  sheet = SpreadsheetApp.getActiveSheet();
  range = sheet.getRange("A1:E5");
  cells = range.getValues();
  for(x in cells) {
    for(y in cells[x]) {
      cells[x][y] = cells[x][y].replace(/abc/g, "def");
    }
  }
  range.setValues(cells);
}

コメント

タイトルとURLをコピーしました