質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google フォーム

Google フォームは、 Google社が提供しているアンケートフォーム作成および集計ができる無料のツール。Googleアカウントがあれば利用が可能です。集計データは、スプレッドシートに収集され、データ分析もできます。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

0回答

1471閲覧

GASでgoogleフォームのセクション自体をシャッフルしたい

camellia0216

総合スコア1

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google フォーム

Google フォームは、 Google社が提供しているアンケートフォーム作成および集計ができる無料のツール。Googleアカウントがあれば利用が可能です。集計データは、スプレッドシートに収集され、データ分析もできます。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2021/07/02 06:32

前提・実現したいこと

現在、googleフォームでアンケート用紙を作成しています。
そこでセクション自体の順序をシャッフルさせる機能を追加したいです。
しかし、私が調べる限りでは、選択肢をシャッフルさせる、またはセクション内の問題順序をシャッフルさせる機能しか見つかりませんでした。
GASやgoogleフォームの知識がある方、何卒回答お願いいたします。
一応現状のGASコードも下に記載しておきます。

該当のソースコード

javascript

1function makeForm() { 2 //シートの読み取り 3 var activeSheet = SpreadsheetApp.getActiveSheet(); 4 console.log(activeSheet.getName()); 5 //フォーム名と説明文を取得し、フォームを作成 6 var formTitle = activeSheet.getRange(1,3).getValues(); 7 var formDescription = activeSheet.getRange(1,4).getValues(); 8 var form = FormApp.create(formTitle); 9 form.setDescription(formDescription); 10 11 12 //問題データを読み取り 13 var lastRow = activeSheet.getLastRow(); 14 var lastColumn = activeSheet.getLastColumn(); 15 var qestionList = []; 16 qestionList = activeSheet.getRange(3,2,lastRow-2,lastColumn-1).getValues(); 17//ここには本来問題文を入れているが割愛 18 kindlist = ['質問1','質問2','質問3']; 19 20 //問題文・選択肢を作成 21 for (var j=0 ; j < qestionList.length ;j++) { 22 var pageTwo = form.addPageBreakItem().setTitle('以下の質問に回答してください'); 23 24 for(var i = 0 ; i < kindlist.length ; i++){ 25 var choices ; 26 27 28 //ラジオボタンの作成 29 var item = form.addMultipleChoiceItem(); 30 //選択肢と解答の番号を取得 31 choices = [ 32 item.createChoice('5.とてもそう思う'), 33 item.createChoice('4.そう思う'), 34 item.createChoice('3.どちらともいえない'), 35 item.createChoice('2.そう思わない'), 36 item.createChoice('1.全くそう思わない') 37 ]; 38 39 40 //問題文・選択肢・必須をセットする 41 item.setTitle( (i+1) + '.' + qestionList[j][0]+kindlist[i]); 42 item.setChoices(choices); 43 item.setRequired(true); 44 45 } 46 47 } 48}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問