earthpg:GAS専門のプログラミングスクール

初心者必見!GASで環境変数を効果的に活用する方法

GASを使い始めたんだけど、環境変数ってどうやって使うのかよくわからなくて…
猫男
猫男
catman
catman
catmanが詳しく説明してやろう。GASでの環境変数は、設定情報を保存するのに役立つんだ。

GASで環境変数を利用する基本

GASには環境変数の概念そのものはないが、プロパティサービスを利用して似たような機能を実現できるんだ。

プロパティサービスとは?

プロパティサービスは、スクリプトやユーザーに関係するデータを保存するためのものだ。GASのユニークな機能といえる。

プロパティサービスの種類

  1. スクリプトプロパティ:スクリプト全体で共有される。
  2. ユーザープロパティ:ユーザーごとに設定され、他のユーザーには影響しない。
  3. ドキュメントプロパティ:特定のドキュメントに関連付けられる。

プロパティサービスを使った環境変数の設定


function setScriptProperty() {
  const scriptProperties = PropertiesService.getScriptProperties();
  scriptProperties.setProperty('environment', 'production');
}

このコードでは、getScriptProperties() メソッドを使ってスクリプトプロパティを取得している。setProperty() メソッドを使って、環境名を設定することができる。

おお!プロパティサービスを使うことで、環境変数のようなものを扱えるのか。
猫男
猫男

プロパティサービスから値を取得する

設定したプロパティの取得方法


function getScriptProperty() {
  const scriptProperties = PropertiesService.getScriptProperties();
  const environment = scriptProperties.getProperty('environment');
  Logger.log('Current environment: ' + environment);
}

プロパティの値を取得するには、getProperty() メソッドを使用する。この例では、現在の環境名称をログに出力している。

プロパティを安全に削除する方法


function deleteScriptProperty() {
  const scriptProperties = PropertiesService.getScriptProperties();
  scriptProperties.deleteProperty('environment');
}

プロパティを削除するには deleteProperty() メソッドを使用します。これで設定情報を安全に削除可能だ。

catman
catman
プロパティサービスは便利だから、うまく利用して開発を効率化しよう。

練習問題:環境変数を使ってみよう

1. スクリプトプロパティを使って簡単な設定情報を保存して、その値を画面に表示するスクリプトを作成してください。

解答・解説


function saveAndRetrieveProperty() {
  const scriptProperties = PropertiesService.getScriptProperties();
  
  // プロパティをセットする
  scriptProperties.setProperty('appVersion', '1.0.3');
  
  // プロパティを取得する
  const version = scriptProperties.getProperty('appVersion');
  Logger.log('App Version: ' + version);
  
  // プロパティを削除する
  scriptProperties.deleteProperty('appVersion');
}

このスクリプトでは、まず setProperty() メソッドを用いてバージョン情報をプロパティに保存する。続いて getProperty() メソッドを使用して、その情報を取り出してログに記録し、最後に deleteProperty() メソッドで削除している。これで、プロパティサービスによる情報管理の基本を理解できる。