スキルアップを始める!

【Google Apps Script(GAS)入門】第2回|業務自動化!Googleフォームの回答内容を他のスプレッドシートにも自動転記する方法|openById

GAS(GoogleAppsScript)
GAS(GoogleAppsScript)
この記事は約3分で読めます。

※記事中に広告情報を含みます。

スキルを手に入れた時、人は強くなれる。
Youtubeでスキルアップを始める 電子書籍でスキルアップを始める
\ワードプレスのスキルアップはこちら!/ WordPress入門読本

前回「Googleフォームの回答内容を他のスプレッドシートにも自動転記する方法」でsetValueのところで転記先の行が同じ値になる…というところで詰まってしまった続きです。

今回の内容をまとめた本はこちら!▼

https://amzn.to/3jkdlCj

おさらい

  1. フォームの回答があった時は「フォームの回答1」というシートにデータが自動的に入る。
  2. 「フォームの回答1」というシートに自動的にデータが入った時に、別のスプレッドシートの「回答の転記」というシートの「末尾行」に自動的にデータが入力される。

setValueで書き込み

s_name_to.getRange(lastRow_PlusOne, 1,1,s_name_from.getLastColumn()).setValue(data);

getRangeで転記先の(最終行+1行に、1列目から、 1行分、 転記元の列数分)転記元の最終行のデータをsetValue()で書き込みます。

??なぜか、1列目のデータが行の全てのセルに転記されてしまいます。

というところで前回は詰まりました…。

解決しました

これ…かなりシンプルな答えでした。

内容をまとめた本はこちら!▼

https://amzn.to/3jkdlCj

[rml_read_more]

そう。「S」があるかないか…だったようです。

setValueの場合は単一セル、setValuesの場合は複数セル。

そうだったんです。「s」を付けることで行の値が取得できたんですね…。考えてみれば、そういうことも考えられたのかもしれません。

ということで、setValuesに書き換えました。

setValues

ということで…実行。

転記されました!!(3回押したので3つ書き込まれています。笑)

これで、やりたいイメージの土台が出来ました!

あとは、「フォームに回答があった時に自動転記する」という動作のトリガーを仕掛けます。

トリガー

トリガーを設定します。

「+トリガーを追加」から、トリガーを作成できます。

実行する関数を設定します。

今回は「PostToAnotherFile」という関数を選択します。

イベントの種類

イベントの種類は、フォームに送信があったタイミングで自動転記したいので、「フォーム送信時」です。

「このアプリは確認されていません」

という表示が出た時は「詳細」を選択して、「XXXXXXXX(安全ではないページ)に移動」を選択します。

許可を与えるGoogleアカウントを選択します。

新しいトリガーが作成されました!!

テストする

フォーム送信してみます。

確認

転記元(フォーム送信の回答先シート)

別のシート(回答の転記先のシート)

転記されました!!
\(^o^)/

まとめ

ここまでプログラムを組めば、最初にやりたかった「フォーム送信」→「回答のシート行にデータが入る」→「別のファイルの最終行にデータが追加される」というプロセスの自動化が出来ます!

ご参考下さい!(^^)

今回の内容をまとめた本はこちら!▼

https://amzn.to/3jkdlCj
URLをコピーしました!