Googleフォームの基本の使い方を知っている人向けです。
Googleフォームで大量に選択肢と設問を設定したい人に朗報です!スプレッドシートに設問を作ると一瞬でフォームを作成してくれるうえに、フォームの編集URL、共有URLも一発で出力してくれる、ライフハックを発明しました。
ラジオボタン、チェックボックス、記述式など設問形式を指定して、思った形式でフォームを作成できます。コピペで簡単なので、ぜひやってみてください。
グーグルフォーム生成用のスプレッドシートを作成
シート名などはスクリプトで参照します。まったく同じ形式で作成してください。
概要シート
アンケート概要や、自動生成されたグーグルフォームのURLの出力先を指定します。シート名は必ず「概要」としてください。

タイトルの項目、概要文、編集用URL、共有用URLを画像に記載のセルに設定します。
質問シート
質問の形式や内容、選択肢を設定するシートを作成します。シート名は必ず「質問」としてください。

質問の内容を1行目に記載します。
つぎに画像のように、以下の項目から、質問の種類(形式)を指定してください。
- ラジオボタン
- チェックボックス
- プルダウン
- 記述式
- 日付
質問の選択肢も埋めていきましょう。
拡張機能でスクリプトを書く
コピペでOKのスクリプトを貼ります。

拡張機能からApps Scriptを開きます。
const ss = SpreadsheetApp.getActiveSpreadsheet();
function myFunction() {
/*
Googleフォームのアイテムオブジェクトを返す関数
*/
function createItem(form, title, type) {
if (type == "ラジオボタン") {
return form.addMultipleChoiceItem().setTitle(title);
} else if (type == "チェックボックス") {
return form.addCheckboxItem().setTitle(title);
} else if (type == "プルダウン") {
return form.addListItem().setTitle(title);
} else if (type == "記述式") {
return form.addTextItem().setTitle(title);
} else if (type == "日付") {
return form.addDateItem().setTitle(title);
}
}
const ss = SpreadsheetApp.getActiveSpreadsheet();
//概要シートからタイトルとアンケート概要を取得する
const values = ss.getSheetByName('概要').getDataRange().getValues();
const formTitle = values[0][1];//タイトル
const formDescription = values[1][1];//アンケートの概要
//フォーム作成
var form = FormApp.create(formTitle);//フォームを新規作成&タイトルを設定
form.setDescription(formDescription);//アンケートの概要を設定
//質問シートの値を取得
const q_Sheet = ss.getSheetByName("質問");
const rows = q_Sheet.getLastRow();
const columns = q_Sheet.getLastColumn();
const q_Values = q_Sheet.getRange(1, 1, rows, columns).getValues();
//アイテムを追加する
for (let i = 0; i < columns - 1; i++) {
const title = q_Values[0][i + 1];
const type = q_Values[1][i + 1];
const item = createItem(form, title, type);
let choiceVals = [];//選択肢を保持するリスト
for (let j = 0; j < rows - 2; j++) {
const choiceVal = q_Values[j + 2][i + 1];
if (choiceVal == "") {
break;
} else {
choiceVals.push(choiceVal);
}
}
//アイテムに選択肢を追加する
if (choiceVals.length != 0 && (type == "ラジオボタン" || type == "チェックボックス" || type == "プルダウン")) {
item.setChoiceValues(choiceVals);
}
}
//概要シートに、フォームのURLを出力する
ss.getSheetByName('概要').getRange('B4').setValue(form.getEditUrl());
ss.getSheetByName('概要').getRange('B5').setValue(form.getPublishedUrl()); //概要
}
上記のスクリプトをコピペします。
次に「プロジェクトを保存」をタップし、保存できたら「実行」をタップしてください。
自分のGoogleアカウントの認証が必要になります。案内に沿って紐づけるGoogleアカウントを選択してください。そのアカウントのマイドライブにGoogleフォームが作成されます。

実行ログが実行完了となっていれば成功、エラーになっていたらchatgptにエラー部分をコピペして聞いてみてください。原因を教えてくれます。

フォームの編集用URLが書き出されるので、フォームの色の変更やセクションの追加、その他記述項目の調整などをして仕上げてください。
組織外への共有が必要な場合には、フォームの設定箇所で変更しましょう。