Apps Scriptリファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2025年5月8日木曜日

Google Formsで記述式の質問に字数制限を設定したい


記述式の質問には「回答の検証」を設定することができます


フォームの編集画面

右下の︙メニューで「回答の検証」を選択します



検証方法には「数値」「テキスト」「長さ」「正規表現」という種類があります


今回は字数制限したいので「長さ」を選びます

長さには「最大文字数」か「最小文字数」を設定できます

今回は最大文字数を20に設定してみます

「カスタムのエラーテキスト」入力欄には

設定した文字数(今回は20)を超えたときに出すメッセージを入力します




フォームの回答画面

フォームを開いた時点は特に変わりはありません


入力文字数が20を超えると

設定した「カスタムのエラーテキスト」が赤い文字で表示されます




Apps Script で作成する場合

以下の Code.gs で formName, description, title, maxLength, helpText の値を書き換えて

createShortAnswerQuestionWithValidation() を実行すると

上記のような「回答の検証」が設定されたフォームが作成されます



Code.gs
function createShortAnswerQuestionWithValidation() {
const formName = 'Favorite Color Survey';
const description = 'Please tell us your favorite color.';
const title = 'What is your favorite color?';
const maxLength = 20; // バリデーションの最大文字数
const helpText = `Please enter no more than ${maxLength} characters.`;

const form = FormApp.create(formName);
form.setDescription(description);
// 短文記述式の質問を追加
const item = form.addTextItem();
item.setTitle(title)
.setRequired(false);

const textValidation = FormApp.createTextValidation()
.setHelpText(helpText)
.requireTextLengthLessThanOrEqualTo(maxLength)
.build();
item.setValidation(textValidation);

form.setPublished(false);

Logger.log('Form Edit URL: ' + form.getEditUrl());
}



Tips

文字の「長さ」以外の設定について


「数値」の場合
  • 次より大きい
  • 次以上
  • 次より小さい
  • 次以下
  • 次と等しい
  • 次と等しくない
  • 次の間にある
  • 次の間にない
  • 数字
  • 整数



「テキスト」の場合
  • 次を含む
  • 含まない
  • メールアドレス
  • URL



「正規表現」の場合
  • 次を含む
  • 含まない
  • 一致する
  • 一致しない



Tips 2

上記は「記述式(短文)」を例にしましたが

長文を記述する「段落」も同様に「回答の検証」を設定できます


段落の場合に「回答の検証」で選択できるのは「長さ」と「正規表現」の2つ


Reference

Class TextValidationBuilder 

Class TextValidation 





Latest post

Google Formsで記述式の質問に字数制限を設定したい

記述式の質問には「回答の検証」を設定することができます フォームの編集画面 右下の︙メニューで「回答の検証」を選択します 検証方法には「数値」「テキスト」「長さ」「正規表現」という種類があります 今回は字数制限したいので「長さ」を選びます 長さには「最大文字数」か「最小文字数」を...