こんな感じのフォームを作ることありますよね??
これでデータを受けると、スプレッドシートにはこんな感じで整理されます。
このチェックボックスは便利なんですけど、カンマで区切られているので、一つのセルに複数のデータが入ってしまうんですよね。
[1] 出力結果
これを自動で分割できないかということでやってみました。
こんな感じ↓
この使い方を応用すれば、別シートにいろんな形で整理が楽そうですよね!
[2] フォームの作成
まずは、チェックボックスのフォームを作ってみましょう
[3] スプレッドシートの作成
次に、回答をスプレッドシートに表示から、スプレッドシートを作成してください。
今回は、こちらのスプレッドシートにプログラムを入れていきたいと思います。
[4] プログラムのコピペ
下記のプログラムをコピペしてください!
function checkBox(e) {//メイン関数
var values = e.values;//フォームの回答を取得
var stamp = values[0];//タイムスタンプを取得(今回はなくても動きます)
var text = values[1];//配列
var splitText =text.split(',');//カンマで区切られたものを配列にして格納する
var ss = SpreadsheetApp.getActiveSpreadsheet();//スプレッドシートを有効にする
var sht = ss.getSheetByName('整理');
for (i = 0; i < splitText.length; i++) {
sht.getRange(i*1+2, 1).setValue(splitText[i].trim());
/*
1回目の処理の時は(i=0の時)
['ぶどう','さくらんぼ','もも']
0番目▶️ぶどうをセルに書き込む
2回目の処理の時は(i=1の時)
1番目▶️さくらんぼをセルに書き込む
*/
}
}
4行目いらないかも。
これで事すむんじゃないかな?試してないけど🤣笑
var splitText =values[1].split(',');//カンマで区切られたものを配列にして格納する
[4] 実行
貼り付けをしたら、保存、実行をして権限の承認を行なってください。
次にトリガーをフォーム送信時に設定します。
この2つは、下記の記事を参考にしてください。
それでは、フォームを送信してみてください!
スプレッドシートに分割して取得されているはずです。
使い方の動画はこちらで紹介しています!
これを使って何か!ということではないので、ぜひご覧いただいてお試しください!
参考にさせていただいたサイトはこちらです!
Google Apps Scriptの文字列で空白を削除する方法(trim,replace) | AutoWorker〜Google Apps Script(GAS)とSikuliで始める業務改善入門
Google Apps Script(GAS)で文字列に含まれている空白や空白文字を除去・削除したい場合の対応方法を解説します。 trimメソッドとreplaceメソッドを使い、...
Google Apps Scriptの文字列を指定文字で分割・区切る方法(splitメソッド) | AutoWorker〜Google Apps Script(GAS)とSikuliで始める業務改善入門
Google Apps Script(GAS)で文字列を指定した文字で分割する方法を紹介します。 カンマ(,)やスペースで区切られた文字列などを分割する際に利用できます。 &nbs...
行・列を操作する(挿入・削除・非表示・サイズ)|Google Apps Script入門
シートの行や列全体に対する操作になります、挿入、削除、表示非表示、行高、列幅、これらは、sheetオブジェクトのメソッドを使います。以下では、sheetオブジェクトのメソッドのうち、行・列に関するメソッドを抜粋しています。基本として見方、使い方ですが、1行や1列のみ対象の場合は単数形(Row,Column) 複数行…
コメント