タイトルのテキスト
タイトルのテキスト
タイトルのテキスト
タイトルのテキスト

Google Apps Script を使ってワークシートを追加する方法

GAS VBA

t f B! P L

 

gasの画像

Google Apps Script (GAS) を使って、Google スプレッドシートに新しいシートを追加する方法を説明します。GAS JavaScript を基にしたスクリプト言語で、Google のサービスを自動化するのに役立ちます。

〇手順

Google スプレッドシートを開く:

まず、Google スプレッドシートを開きます。

・スクリプトエディタを開く:

メニューから「拡張機能」 > Apps Script」を選択します。

これで、Google Apps Script のエディタが開きます。

新しいスクリプトを書く:

以下のコードをスクリプトエディタにコピーして貼り付けます。

 

function addSheet() {

  // スプレッドシートのアクティブなインスタンスを取得

  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

    // 新しいシートを追加

  spreadsheet.insertSheet('新しいシート名'); // '新しいシート名'を任意の名前に変更できます

  // 必要であれば、追加したシートに何か操作を行う

  var sheet = spreadsheet.getSheetByName('新しいシート名');

  sheet.getRange('A1').setValue('こんにちは!');

}

〇スクリプトを実行:

・コードを書いたら、上部の「保存」ボタンをクリックしてスクリプトに名前を付けて保存します。

・次に、addSheet 関数を選択し、「実行」ボタンをクリックします。

権限の許可:

初回実行時には、GAS がスプレッドシートにアクセスするための権限を許可する必要があります。指示に従って権限を許可します。

〇シートが追加されているか確認:

スクリプトが実行されると、スプレッドシートに「新しいシート名」というシートが追加されているはずです。A1 セルには「こんにちは!」と入力されています。

〇シート名を指定しないで追加

spreadsheet.insertSheet('新しいシート名');

var newSheet = spreadsheet.insertSheet();

と括弧の中を空にするとワークシート名が自動で振られます。

 VBAだと

VBA (Visual Basic for Applications) を使って、Excelで同様に新しいシートを追加する場合のコードを説明します。VBAでも、シート名を指定せずに新しいシートを追加することが可能です。


以下のコードをExcelVBAエディタに入力すると、新しいシートが作成されます。


Sub AddSheetWithoutName()

    ' ワークシートを追加

 Dim newSheet As Worksheet

 Set newSheet = ThisWorkbook.Sheets.Add   

    ' 新しいシートの名前を取得(デフォルト名)

 Dim sheetName As String

 sheetName = newSheet.Name   

    ' 新しいシートの名前をメッセージボックスで表示

 MsgBox "新しいシートの名前: " & sheetName   

    ' 新しいシートのA1セルにテキストを入力

 newSheet.Range("A1").Value = "新しいシートが作成されました"

End Sub 

〇シートを複製したい場合

Google Apps Script (GAS) を使って特定のシートを丸ごとコピーする方法について説明します。この方法では、元のシートを複製して、新しいシートとして追加します。

以下のコードを使って、特定のシートを丸ごとコピーできます。

function copySheet() {

  // コピーしたいシートの名前を指定

  var sheetName = "コピー元のシート名";

  // スプレッドシートのアクティブなインスタンスを取得

  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

   // 特定のシートを取得

  var sourceSheet = spreadsheet.getSheetByName(sheetName);

    if (sourceSheet) {

    // シートをコピーして、新しいシートとして追加

    var copiedSheet = sourceSheet.copyTo(spreadsheet);

      // コピーされたシートの名前を変更

    copiedSheet.setName(sheetName + " のコピー");

      // 必要に応じてシートの位置を設定(例:最初に移動)

    spreadsheet.moveActiveSheet(1);

      // コピーされたシートをアクティブにする

    spreadsheet.setActiveSheet(copiedSheet);

      Logger.log("シート '" + sheetName + "' をコピーしました。");

  } else {

    Logger.log("シート '" + sheetName + "' が見つかりません。");

  }

}

 〇まとめ

Google Apps Scriptを使って、スプレッドシートを追加、複写する方法をまとめました。

Excelでもスプレッドシートでもワークシートに対して何かしらの処理をすることが多く、直接、元のシートをいじるより、コピーしたものを使うことがよくあります。

 シートの追加、コピーができると結果が変になってしまったも大丈夫ですので安心です。

koneka1208

koneka1208

自己紹介

自分の写真
エクセル好きの窓際会社員です。 エクセルの操作法や日々の会社で得た知見などを発信していきます。 よろしくお願いします。

ブログ アーカイブ

連絡フォーム

名前

メール *

メッセージ *

QooQ