GAS Form.getId()で顧客管理を効率化!フォームID取得からマーケティング活用まで
Google Apps Script (GAS) の Form.getId() は、GoogleフォームのIDを取得するための非常に便利な関数です。特にマーケティング担当者にとって、顧客管理やキャンペーン管理を効率化するための強力なツールとなります。本記事では、Form.getId() の基本的な使い方から、具体的なマーケティングシナリオでの活用方法、よくある問題の解決策、さらにはカスタマイズ方法まで、幅広く解説します。
Form.getId()の基本
Form.getId() は、指定されたGoogleフォームのIDを文字列として返します。このIDは、フォームを一意に識別するために使用され、他のGAS関数と組み合わせて、フォームの操作やデータ処理を自動化するために利用されます。
構文
form.getId()
ここで form は Form オブジェクトを表します。Form オブジェクトは、FormApp.openById(id) や FormApp.openByUrl(url) などのメソッドを使用して取得できます。
戻り値
フォームのID(文字列)
マーケティングにおける利用シチュエーション
マーケティングにおいて、Googleフォームはアンケート、問い合わせフォーム、キャンペーン応募フォームなど、さまざまな用途で活用されます。Form.getId() を使用することで、これらのフォームに関連する業務を自動化し、効率化できます。
- 顧客データの収集と管理
- キャンペーン応募者の追跡
- アンケート結果の分析
- 顧客セグメントの作成
実装例
1. フォームIDを取得してスプレッドシートに記録する
特定のGoogleフォームのIDを取得し、そのIDをスプレッドシートに記録する例です。フォームIDを手動でコピー&ペーストする手間を省き、自動化することができます。
function recordFormId() {
// スプレッドシートIDとシート名を設定
const spreadsheetId = "YOUR_SPREADSHEET_ID";
const sheetName = "Form IDs";
// フォームIDを設定(手動で入力)
const formId = "YOUR_FORM_ID";
// スプレッドシートを開く
const ss = SpreadsheetApp.openById(spreadsheetId);
const sheet = ss.getSheetByName(sheetName);
// フォームを開く
const form = FormApp.openById(formId);
// フォームIDを取得
const id = form.getId();
// シートにIDを書き込む
sheet.appendRow([form.getTitle(), id]);
Logger.log("Form ID: " + id);
}
2. フォームの回答を自動的にスプレッドシートにエクスポートする
フォームの回答があった際に、その回答を自動的にスプレッドシートにエクスポートする例です。トリガーを設定することで、リアルタイムにデータを収集できます。
function onFormSubmit(e) {
// スプレッドシートIDとシート名を設定
const spreadsheetId = "YOUR_SPREADSHEET_ID";
const sheetName = "Form Responses";
// スプレッドシートを開く
const ss = SpreadsheetApp.openById(spreadsheetId);
const sheet = ss.getSheetByName(sheetName);
// フォームの回答を取得
const responses = e.response.getItemResponses();
// 回答を配列に格納
let row = [new Date()]; // タイムスタンプを追加
for (let i = 0; i < responses.length; i++) {
row.push(responses[i].getResponse());
}
// シートに書き込む
sheet.appendRow(row);
}
3. フォームIDを使ってフォームの情報を取得する
フォームIDを使って、フォームのタイトルや説明などの情報を取得する例です。複数のフォームを管理する際に、それぞれのフォームに関する情報をプログラムで取得できます。
function getFormInfo() {
// フォームIDを設定
const formId = "YOUR_FORM_ID";
// フォームを開く
const form = FormApp.openById(formId);
// フォームの情報を取得
const title = form.getTitle();
const description = form.getDescription();
const id = form.getId();
// 情報をログに出力
Logger.log("Title: " + title);
Logger.log("Description: " + description);
Logger.log("ID: " + id);
}
よくある問題とトラブルシューティング
フォームIDが間違っている
FormApp.openById(id) でフォームを開けない場合、フォームIDが間違っている可能性があります。フォームのURLを確認し、正しいIDを入力してください。
権限の問題
GASがフォームにアクセスする権限がない場合、エラーが発生することがあります。GASプロジェクトの権限設定を確認し、必要な権限を付与してください。
カスタマイズ方法と応用例
フォームの回答に応じてメールを送信する
フォームの回答内容に応じて、特定の担当者にメールを送信する処理を実装できます。たとえば、問い合わせフォームで「製品に関する質問」が選択された場合、製品担当者にメールを送信するといった処理が可能です。
フォームの回答をデータベースに保存する
フォームの回答をGoogle Cloud SQLなどのデータベースに保存することで、より高度なデータ分析や顧客管理が可能になります。
まとめ
Form.getId() は、Googleフォームを活用したマーケティング活動を効率化するための強力なツールです。この記事で紹介したコード例やトラブルシューティングを参考に、ぜひ Form.getId() を活用して、顧客管理やキャンペーン管理を効率化してください。
重要なポイント:Form.getId() を利用する際は、フォームIDの正確性と、GASプロジェクトの権限設定に注意してください。

CodeCampは、現役エンジニアからマンツーマンで学べるオンラインプログラミングスクールです。WebデザインやWebサービス開発、転職支援など、目的に合わせた多様なコースが選べます。
朝7時〜夜23時40分まで、365日レッスンが受けられるため、忙しい方でも自分のペースで学習を進めることが可能です。通過率8%の厳しい選考を通過した質の高い講師陣が、あなたのキャリアチェンジを強力にサポートします。
さらに、未経験者向けのカリキュラムや、学習開始から20日以内の全額返金保証制度もあるため、プログラミング学習に不安を感じている方でも安心して始めることができます。
CodeCampで理想の働き方を実現しよう