irrlicht tool

オフィスワークで役立つ知識の備忘録です

GAS[Google Apps Script]配列に格納して置換、配列を貼り付け

function test() {

var AS = SpreadsheetApp.getActiveSheet()  // アクティブシートを選択

var lastRow = AS.getLastRow()  // 入力最終行を調べる


  // 要置換部分を格納、貼り付け ///////////
  const original = AS.getRange(5, 2, lastRow, 2).getValues()  // 一次元配列に格納
  
  for(var i = 0; i < original.length; i++){
  for(var j = 0; j < original[i].length; j++){
  original[i][j] = original[i][j].replace(" ", " ")  // 半角スペースを全角に置換
  original[i][j] = original[i][j].trim()  // 不要なスペースを削除
  }
  }

  AS.getRange(5, 10, original.length, original[0].length).setValues(original)  // 配列を貼り付け

}

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

一次元配列に格納して置換するコードです

指定したい範囲は仮なので書き換えてください


// 一次元配列に格納

getValuesで配列に格納できます
ここでは一列なので一次元配列ですが、複数列にすると二次元で格納できます

getRange(5, 2, lastRow, 2).getValues()

getRange(行ここから, 列ここから, 行ここまで, 列ここまで).getValues()


// 半角スペースを全角に置換

replaceで置換可能です

replace(" ", " ")

replace("これを", "これに")


// 不要なスペースを削除

trimで前後のスペースを削除、真ん中にスペースが二つ以上あれば一つ残して削除できます


// 配列を貼り付け

配列の貼り付けは、格納した配列の行数と列数まで指定しないとできません
でも毎回変わるので固定の数字にはできない。
なので格納した配列の最大行数と最大列数を都度求めるコード(length)を入れます

AS.getRange(5, 10, original.length, original[0].length).setValues(original)

AS.getRange(行ここから, 列ここから, 格納した配列の最大行数, 格納した配列の最大列数).setValues(格納した配列)