Google Apps Scriptでシートの作成を自動化する処理をおこなう際、すでにこれから作成するシートと同じ名前のシートが存在するかをチェックする必要がある。

この存在チェックをおこなう関数を用意したので紹介する。

シートの存在チェックをおこなう関数

function isSheetExists(sheetName) {
  let ss = SpreadsheetApp.getActiveSpreadsheet();
  let allSheets = ss.getSheets();
  for(var i = 0; i < allSheets.length; i++) {
    if(sheetName === allSheets[i].getName()) return true;
  }
  return false;
}

今回用意した関数は、文字列型でシート名を引数に取り、同名のシートが存在した場合はtrueを、存在しない場合はfalseを返すもの。

調べたところGASでは、一発でシートの存在チェックをおこなう関数が用意されていないようなので、このように全シートをループでチェックするような処理を書くことが必要とされる。