質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google フォーム

Google フォームは、 Google社が提供しているアンケートフォーム作成および集計ができる無料のツール。Googleアカウントがあれば利用が可能です。集計データは、スプレッドシートに収集され、データ分析もできます。

Q&A

解決済

1回答

377閲覧

for構文を使って複数シートに同じ値を入れていきたいがエラーが出て進まない。

ch25

総合スコア1

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google フォーム

Google フォームは、 Google社が提供しているアンケートフォーム作成および集計ができる無料のツール。Googleアカウントがあれば利用が可能です。集計データは、スプレッドシートに収集され、データ分析もできます。

0グッド

0クリップ

投稿2021/06/13 13:08

前提・実現したいこと

GAS初心者です。よろしくおねがいします。

スプレッドシートの複数のシートに、フォームの回答を入れたい。

発生している問題・エラーメッセージ

TypeError: Cannot read property 'getRange' of undefined

該当のソースコード

function myFunction(e) { var itemResponses = e.response.getItemResponses(); var ss_id = '*****************************'; var ss = SpreadsheetApp.openById(ss_id); var sheets = ss.getSheets(); var sheetNum = ss.getNumSheets();       //フォームの質問は最初に日時を設定しています var date = itemResponses[0].getResponse(); date = Utilities.formatDate(today,"JST", "yyyy-MM-dd"); for (var g = 1; g <= sheetNum; g++){ sheets[g].getRange(1,sheets[g].getLastColumn()+1 ).setValue(date).setNumberFormat('@') } }

試したこと

トリガーはフォームからフォームの送信時にしています。
フォームで日時を指定して送信すると、各シートに日時は入っているのですが、for構文以降、進まない状況です。
getRangeの中のsheetNumの代わりに具体的な数値を入れるとエラーは出ません。
よろしくおねがいします。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

sheets[]のインデックスに指定するのは0始まりの数字(例:シートが5枚あるばあいはsheets[0]~sheets[4])なので

diff

1- for (var g = 1; g <= sheetNum; g++){ 2+ for (var g = 0; g < sheetNum; g++){ 3 sheets[g].getRange(1,sheets[g].getLastColumn()+1 ).setValue(date).setNumberFormat('@') 4 5 }

としてみてはいかがでしょうか。

投稿2021/06/13 13:35

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ch25

2021/06/17 22:53

ありがとうございます。 数値が1ずれるんですね。よくわかりました。 無事、思い通りに動くようになりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問