GASでSPREADSHEETにアクセスする方法

このページはGoogle AppsでSPREADSHEETにアクセスする方法の備忘録である。

スプレッドシートを開く

function openSS(ssID) {
  var ssObj = SpreadsheetApp.openById(ssID);
  return ssObj;
}
ssIDスプレッドシートのID
ssObj開いたスプレッドシートオブジェクト

シート名で指定したシートを選ぶ

function selectSheetByName(ssObj ,sheetName) {
  var sheetObj = ssObj.getSheetByName(sheetName);
  return sheetObj;
}
ssObjスプレッドシートオブジェクト
sheetName選択するシート名
sheetObj選択したシートオブジェクト

単一セルの値を読み込む

function read1Cell(sheetObj ,row ,col) {
  var val = sheetObj.getRange(row ,col).getValue();
  return val;
}
sheetObjシートオブジェクト
row読み込むセルの行位置
col読み込むセルの列位置
valセルの値

指定範囲のセルの値を読み込む

function readRangeCell(sheetObj ,begRow ,begCol ,rows ,cols) {
  var vals = sheetObj.getRange(begRow ,begCol ,rows ,cols).getValues();
  return vals;
}
sheetObjシートオブジェクト
begRow読み込むセルの開始行位置
begCol読み込むセルの開始列位置
rows読み込むセルの行数
cols読み込むセルの桁数
vals読み込んだセルの値(2次元配列)

単一セルに値を書き込む

function write1Cell(sheetObj ,row ,col ,cellVal) {
  sheetObj.getRange(row ,col).setValue(cellVal);
}
sheetObjシートオブジェクト
row書き込むセルの行位置
col書き込むセルの列位置
cellVal書き込む値

指定範囲のセルに値を書き込む

function writeRangeCell(sheetObj ,begRow ,begCol ,rows ,cols ,cellVals) {
  sheetObj.getRange(begRow ,begCol ,rows ,cols).setValues(cellVals);
}
sheetObjシートオブジェクト
begRow書き込むセルの開始行位置
begCol書き込むセルの開始列位置
rows書き込むセルの行数
cols書き込むセルの桁数
cellVals書き込む値(2次元配列)

シート名で指定したシートがなければ追加する

function insertSheetWhenNonexist(ssObj ,sheetName) {
  //シートを選択してみる。シートが存在しないときはnullになる。
  let sheetObj = ssObj.getSheetByName(sheetName);

  //シートが存在しなかったときはシートを作成する。
  if(sheetObj === null) {
    sheetObj = ssObj.insertSheet(sheetName);
  }

  return sheetObj;
}
ssObjスプレッドシートオブジェクト
sheetName追加するシート名

シート名で指定したシートがあるかどうかを調べる

function existSheet(ssObj ,sheetName) {
  let exist = true;

  //目的のシートを選択してみる。シートが存在しないときはnullになる。
  let sheetObj = ssObj.getSheetByName(sheetName);
  if(sheetObj === null) {
    exist = false;
  }

  return exist;
}
ssObjスプレッドシートオブジェクト
sheetName調べたいシート名

コメント

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