Google apps scriptでGoogleフォームを取得する方法
Google apps scriptでGoogleフォームを取得する
- getActiveForm()
- openById(id)
- openByUrl(url)
を使います。
getActiveForm()
スクリプトがコンテナにバインドされているフォームを返します。スクリプトがコンテナにバインドされていないフォームと対話するにはopenById(id)、openByUrl(url) 代わりにまたはを使用します。
openById(id)
Form指定されたIDを持つを返します。IDが無効であるか、ユーザーにフォームを開く権限がない場合は例外がスローされます。
openByUrl(url)
Form指定されたURLを持つを返します。URLが無効であるか、ユーザーにフォームを開く権限がない場合は例外をスローします。
参照元:
Google apps scriptからGoogleフォームをgetActiveFormを使って取得する例
/*GoogleフォームをgetActiveForm()を使って取得*/
function getActive(){
var frm = FormApp.getActiveForm();
Logger.log(frm);//null
}
Google apps scriptからGoogleフォームをopenByIdを使って取得する例
/*GoogleフォームをopenByIdを使って取得*/
function Byid(){
//フォームの編集>URLからIDを抜粋
//抜萃したIDでフォームを取得
var id = "1ZiYE0Bf3Ui8AR_LflIQIhccWntVYf7-mo-KPmkXWIeM";
var frmid = FormApp.openById(id);
}
Google apps scriptからGoogleフォームをopenByUrlを使って取得する例
/*GoogleフォームをopenByUrlを使って取得*/
function Byurl(){
var url = "https://docs.google.com/forms/d/1ZiYE0Bf3Ui8AR_LflIQIhccWntVYf7-mo-KPmkXWIeM/edit"
var frm = FormApp.openByUrl(url);
Logger.log(frm);
}
まとめ
FormApp.get・・という流れを忘れない。
getActiveForm〜が一番使いやすい。
既存のフォームを指定する場合はopenByUrlの方が使いやすいかも。