GASをTypescriptで。(動作確認済み)
Google Apps Script (GAS) を TypeScript で開発し、VSCode を使ってスプレッドシートを操作する方法を以下に説明します。TypeScript を使うことで、型安全で保守性の高いコードを書けます。
手順
-
必要なツールのインストール
まず、以下のツールをインストールします。- Node.js(npmが使える環境)
- clasp(Google Apps Script の CLI ツール)
clasp のインストールコマンド:
npm install -g @google/clasp -
Google アカウントで
claspを認証clasp login指示に従って Google アカウントで認証を行います。
-
プロジェクトの作成
スプレッドシート用のプロジェクトを作成します。新規プロジェクト作成:
clasp create --type standalone --title "Spreadsheet Project" -
プロジェクトディレクトリのセットアップ
作成したプロジェクトディレクトリで TypeScript を設定します。必要なモジュールのインストール:
npm init -y npm install --save-dev @google/clasp @types/google-apps-script typescriptTypeScript の初期設定:
npx tsc --inittsconfig.jsonを以下のように修正します:{ "compilerOptions": { "target": "es5", "lib": ["es6", "dom"], "module": "commonjs", "strict": true, "outDir": "dist", "rootDir": "src" }, "include": ["src/**/*"] } -
GAS プロジェクトのコードを TypeScript で記述
プロジェクト内にsrcディレクトリを作成し、そこにコードを書きます。例:
src/main.tsを作成function createSpreadsheet(): void { const sheet = SpreadsheetApp.create("My New Spreadsheet"); sheet.getActiveSheet()?.getRange("A1").setValue("Hello, Spreadsheet!"); } function updateSpreadsheet(): void { const spreadsheet = SpreadsheetApp.openById("YOUR_SPREADSHEET_ID"); const sheet = spreadsheet.getActiveSheet(); if (sheet) { sheet.getRange("A1").setValue("Updated Value"); } } -
ビルドとデプロイ
TypeScript を JavaScript にコンパイルし、GAS にデプロイします。ビルド:
npx tscデプロイ:
clasp push -
Google スクリプトエディタでスクリプトを確認
Google Apps Script のウェブエディタでプロジェクトを確認したい場合は以下を実行:clasp open -
スクリプトを実行
Google スプレッドシートの操作コードを実行するには、Google Apps Script のウェブエディタやトリガーで実行を設定します。
補足
-
YOUR_SPREADSHEET_IDの部分には対象のスプレッドシートの ID を入力してください。
スプレッドシートの URL:https://docs.google.com/spreadsheets/d/XXXXXXXXXXXXX/editのXXXXXXXXXXXXXが ID です。 -
clasp のバージョンや Google Apps Script API の仕様が変わることがあるので、最新情報は clasp の公式ドキュメントを参照してください。
Discussion