GASでフォームの質問を簡単に編集する方法

GASを使ってGoogleフォーム内の質問を編集したいんですけど、どうしたらいいか分からなくて困ってます…。
猫男
猫男
catman
catman
わかった、catmanがGASを使ったフォーム質問の編集方法を教えるさ。心配しなくていいよう。

GASでフォームの質問を編集する基本

GASを利用することで、Googleフォーム内の質問を簡単に編集できる。これはGASフォーム編集の基本だ。まずはフォームを取得しよう。

 const form = FormApp.openById('フォームのID'); 

openByIdメソッドを使うことで、指定したフォームを取得できる。

GASでフォーム質問を編集するステップ

次に、得たフォームを操作して質問を編集する手順を見てみよう。

質問を取得する

まずは既存の質問を取得する。

 const items = form.getItems();
 const firstItem = items[0]; // 最初の質問を取得
 const question = firstItem.asTextItem(); 

getItemsメソッドを使って全ての質問を取得する。asTextItemメソッドで質問をテキストアイテムとして取得可能だ。

質問を編集する

質問の内容を編集してみよう。

 question.setTitle("新しい質問のタイトル"); 

setTitleメソッドは、指定のタイトルに質問を編集するためのものだ。

質問を追加する

さらに、新しい質問を追加することもできる。

 form.addTextItem().setTitle('追加された質問のタイトル'); 

addTextItemメソッドを使うと、新しいテキスト質問をフォームに追加できる。

 

なるほど!GASを使うと、フォームの質問を簡単に編集したり追加したりできるんですね!すごい!
猫男
猫男
catman
catman
そうさ、これでフォームのGAS質問編集もお茶の子さいさいだな。必要ならいつでも呼び出してくれ。

 

練習問題

次のコードを完成させて、GASで特定の質問を変更してみよう。

1. フォームを取得する
2. 特定の質問のタイトルを”お気に入りの色は何ですか?”に設定する

 

 

解答・解説

 const form = FormApp.openById('フォームのID');
 const items = form.getItems(FormApp.ItemType.TEXT);
 const question = items[0].asTextItem();
 question.setTitle("お気に入りの色は何ですか?"); 

FormApp.openByIdでフォームを取得し、getItemsでテキストタイプの質問を指定して取得する。asTextItemでテキスト質問として処理でき、setTitleでタイトルを変更する。