見出し画像

【Google Forms】入力制限(バリデーション)をかけて、綺麗なデータを集めよう

色々、GASの記事を書いているのですが、元データが汚ければ、GASを使っても効率はあまり変わりません。書くのがめちゃ大変。綺麗なデータを作るために後工程で頑張るよりも、入力時のバリデーションをかける方が何倍も効率が良かったりします。

今回はGoogle Formsで新従業員登録を作った経験から、正規表現を使ったバリデーションを解説したいと思います。

サンプルはこちら

https://docs.google.com/forms/d/1mkU_eUZbKtkIVbjQWLn7utWfUW6Cqo3Wu6nYUwfpdP4/edit?usp=sharing

スクリーンショット 2020-03-28 10.16.42

●●● ボタンを押して、回答の検証を選び、正規表現、一致するをクリックする。

スクリーンショット 2020-03-28 13.18.44

姓・名(スペースの有無の検知)

^[^ ]*$

コピペなどで氏名を持ってくると、スペースが含まれていることが多いので、スペースがあるとエラーができるようにします。

郵便番号

[0-9]{3}-[0-9]{4}

半角カナ(銀行口座などの登録に)

^[ァ-ン゙゚\ ]+$

金融機関コード

[0-9]{3}

携帯電話番号

[0-9]{3}-[0-9]{4}-[0-9]{4}

IDなども[0-9]{桁数}で、バリデーションをかけることが出来ます。創業初期と最近で桁数が違う場合には、[0-9]{3,4}のようにカンマを入れたら問題なかったと思います。

アルファベット 1桁もしくは、2桁

[A-Z]{1,2}

Google FormsでもGASが使えます。

GASって何?って人も多いと思います。Google Apps Scriptを略して、GASって読んでいます。JavaScriptの一種なのですが、定型作業を自動化する事が出来ます。ExcelのVBAの親戚と考えれば、分かりやすいかもしれません。

下記の記事では、個数を尋ねる場合など、1 - 100までの数字を質問項目に加えたいといったニーズが実務であり、実装しました。良かったら、見てみてください。

特定の時間のみ受け付けるGoogle Formsを運用する際に役立つスクリプト

2021/01/30 追記
特定時刻になったら、Formsの受付を終了したり、受付を開始したりするスクリプトを書きました。記事では、1日の9:00に受付を開始して、27日の18:00で受付を終了するケースを想定して書きました。

正規表現はSpreadsheetでも使えます。

Google Formsは、実務でもバリバリ使っています。

サンプルはこちら。



この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?