コンテンツにスキップ

タイムゾーンの取得

特定のスプレッドシートから、タイムゾーンを取得する方法を解説します。

Spreadsheet.getSpreadsheetTimeZone();

Spreadsheet クラスに用意されている、getSpreadsheetTimeZone() を使用します。

返り値は "America/New_York" のような「地域/都市」形式のタイムゾーン ID の文字列です。利用可能なタイムゾーンは Joda.org で確認できます。

実行にあたってスプレッドシートにアクセスすることになるため、初回実行時に認証が必要になる場合があります。

/**
* 対象スプレッドシートのID
* https://docs.google.com/spreadsheets/d/〇〇〇/edit の〇〇〇の部分
*/
const SPREAD_SHEET_ID = '_______________';
/**
* スプレッドシートのタイムゾーンを返却します
*/
const getSheetTimeZone = () => {
/** 対象スプレッドシート */
const ss = SpreadsheetApp.openById(SPREAD_SHEET_ID);
/** タイムゾーン */
const timeZone = ss.getSpreadsheetTimeZone();
console.log(timeZone);
return timeZone;
};

実行すると、スプレッドシートのタイムゾーンが返却されます。

タイムゾーンが日本時間に設定されていれば "Asia/Tokyo" が取得できます。