GAS PR

[GAS]スプレッドシートのコピーや各種設定情報の取得の方法 -SpreadSheetクラス-

記事内に商品プロモーションを含む場合があります

Google Apps Script (GAS) でスプレッドシートをコピーする方法や、スプレッドシートの各種設定情報の取得や設定の方法を説明します。

SpreadSheetクラスのメソッドを利用した手順について説明します。

Google Apps Scriptの基本的な使い方については下記をご覧ください。

GASによるスプレッドシート操作の概要

GASでスプレッドシートを操作するための「SpreadSheetサービス」は、主に下記のクラスで構成されています。

クラス説明
SpreadSheetAppSpreadSheetサービスの親クラス
Spreadsheetスプレッドシートを操作するクラス
Sheetシートを操作するクラス
Rangeセル範囲を操作するクラス

それぞれ下記のような位置付けになります。

「SpreadSheetApp」→「SpreadSheet」→「Sheet」→「Range」という順の階層構造になっています。操作対象に応じて、下の階層にたどってオブジェクトを取得して利用します。

このページでは、上記の中のSpreadSheetクラスの下記のメソッドについて説明します。

メソッド戻り値説明
getName()Stringファイル名を取得する
rename(newName)voidファイル名を変更する
getId()StringスプレッドシートIDを取得する
getUrl()StringスプレッドシートのURLを取得する
getNumSheets()Integerシートの数をする
copy(name)Spreadsheetシートをコピーする
getSpreadsheetLocale()Stringロケール(言語と地域)を取得する
setSpreadsheetLocale(locale)voidロケール(言語と地域)を設定する
getSpreadsheetTimeZone()Stringタイムゾーンを取得する
setSpreadsheetTimeZone(timezone)voidタイムゾーンを設定する

スプレッドシートのファイル名を操作する

スプレッドシートのファイル名を操作するメソッドを説明します。

スプレッドシートのファイル名を取得する:getName()

スプレッドシートのファイル名を取得するメソッドです。

下記のように実行します。

下記の実行結果になります。ファイル名が出力されます。

スプレッドシートのファイル名を変更する:rename(newName)

スプレッドシートのファイル名を変更するメソッドです。

下記のように実行します。

下記の実行結果になります。renameメソッド実行後はファイル名が変更されています。

スプレッドシートの情報を取得する

スプレッドシートファイルの各種情報を取得するメソッドです。

スプレッドシートIDを取得する:getId()

スプレッドシートのスプレッドシートIDを取得するメソッドです。

スプレッドシートのIDとは、スプレッドシートのファイルを開いた時のURLの下記の太字の部分です。ファイル毎に異なるIDになります。

https://docs.google.com/spreadsheets/d/XXXXXXXX/edit#gid=0

下記のように実行します。

実行すると、スプレッドシートIDが出力されます。

スプレッドシートのURLを取得する:getUrl()

スプレッドシートのURLを取得するメソッドです。

スプレッドシートのURLとは、スプレッドシートのファイルを開いた時の下記のURLです。ファイル毎に異なるURLになります。
XXXXXXXXにはファイル毎に異なるIDが入ります。

https://docs.google.com/spreadsheets/d/XXXXXXXX/edit

下記のように実行します。

実行すると、スプレッドシートのURLが出力されます。

スプレッドシートのシート数を取得する:getNumSheets()

スプレッドシートのシートの数を取得するメソッドです。

下記のように実行します。

下記のファイルに対して実行すると、

下記の結果になります。

スプレッドシートをコピーする

指定した名前でスプレッドシートをコピーする:copy(name)

スプレッドシートファイルを、指定したファイル名でコピーするメソッドです。

下記のように実行します。

下記の実行結果になります。

Googleドライブに下記のようにコピーが作成されます。

スプレッドシートのロケール・タイムゾーンを操作する

スプレッドシートのロケール(言語と地域)やタイムゾーンの設定を操作するメソッドです。

スプレッドシートのロケールを取得する:getSpreadsheetLocale()

スプレッドシートのロケール設定(言語と地域の設定)を取得するメソッドです。

下記のように実行します。

下記の実行結果になります。

スプレッドシートのロケールを設定する:setSpreadsheetLocale(locale)

スプレッドシートのロケール(言語と地域)を設定するメソッドです。

下記のように実行します。

ロケール設定は、スプレッドシートの「ファイル」→「設定」をクリックすると、下記の画面で確認できます。

下記の設定のファイルにさきほどのコードを実行すると、

実行後は、下記のように変わります。
なお、ロケールの設定を更新すると、ファイルの再読み込みが発生するため、Apps Scriptダッシュボードは閉じられます。

スプレッドシートのタイムゾーンを取得する:getSpreadsheetTimeZone()

スプレッドシートのタイムゾーン設定を取得するメソッドです。

下記のように実行します。

下記の実行結果になります。

スプレッドシートのタイムゾーンを設定する:setSpreadsheetTimeZone(timezone)

スプレッドシートのタイムゾーンを設定するメソッドです。

下記のように実行します。

ロケール設定は、スプレッドシートの「ファイル」→「設定」をクリックすると、下記の画面で確認できます。

下記の設定のファイルにさきほどのコードを実行すると、

実行後は、下記のように変わります。

まとめ

Google Apps Script (GAS) でスプレッドシートをコピーする方法や、スプレッドシートの各種設定情報の取得や設定の方法を説明しました。

GASは無料で利用できてとても便利なツールです。

Googleスプレッドシート等のGoogleアプリケーションを利用されている方は、GASを習得することで作業を大きく効率化できます

GASの基本構文を知りたい方は、下記もご覧ください。