GASでスプレッドシートに新しいシートを作成する

本記事では、GASを使ってスプレッドシートに新しいシートを作成する方法を解説していきます。

毎日のレポートを作成したりする際に便利ですので、ぜひ活用してみてください。

今回解説するサンプル動画

サンプル動画
目次

GASでシートを新規作成するサンプル

スプレッドシートのシートを新規作成するにはinsertSheetメソッドを利用します。

function gas_sheet_create2() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet();
  sheet.insertSheet();
}

別のスプレッドシートに新規作成する

上記は紐づいたスプレッドシートに新規作成するスクリプトですが、別のスプレッドシートに新規作成することも可能です。

function gas_sheet_create2() {
  const sheet = SpreadsheetApp.openByUrl("シートURL");
  sheet.insertSheet();
}

※コピー先のシートURLはご自身の環境に合わせて変更してください

2行目で新規作成したいスプレッドシートのURLを指定しています。

新規作成したシートの名前を変更する

insetSheetメソッドでシートの作成はできましたが、作成したシート名が「シート3」のようにデフォルトの名前になっています。

せっかくGASで効率化しているので、新規作成するシート名も自動で変更されるようにしてみましょう。

function gas_sheet_create2() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet();
  sheet.insertSheet().setName('新規作成');
}

3行目にsetNameメソッドを追加することで、任意のシート名で作成することができます。

サンプル動画のコード全体像

冒頭に上げたサンプル動画では、メニューからシート名を指定して新規作成しています。

以下はそのコードの全体像です。ぜひアレンジして使ってみてください。

function gas_sheet_create() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet();
  const sheetName = Browser.inputBox("作成するシート名を入力してください。", Browser.Buttons.OK_CANCEL);

  if(sheetName !== "cancel") {
    sheet.insertSheet().setName(sheetName);
  }
}

function onOpen() {
  const ui = SpreadsheetApp.getUi();
  const menu = ui.createMenu("GAS実行");

  menu.addSubMenu(
    ui.createMenu("シート操作")
    .addItem("新規作成","gas_sheet_create")
    .addItem("コピー","sheetCopy")
  );

  menu.addToUi();
}

シートコピーについては「GASでスプレッドシートのシートをコピーするスクリプト」で解説しています。

まとめ

今回は、GASを使ってスプレッドシートに新しいシートを作成する方法を解説しました。

スプレッドシートをGASで操作することは、作業の効率化を図る第一歩です。ぜひ、本記事を参考に活用してみてください。

よかったらシェアしてね!
  • URLをコピーしました!
目次