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

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

新規登録して質問してみよう
ただいま回答率
85.46%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

0回答

673閲覧

googleform経由のファイルを自動リネームする方法

aaaaa000

総合スコア0

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

1クリップ

投稿2021/11/09 06:14

編集2021/11/25 01:51

前提・実現したいこと

googleformから送られた添付ファイル名を”日付+_+ファイル名”の形にリネームしてドライブに格納したいです。

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

ReferenceError: itemresponses is not defined
at myFunction(コード:8:3)

該当のソースコード

function myFunction(e) {
var itemResponses;
var fileName;
var attachment;

// フォームの回答結果の12こめ(添付ファイル情報)を取得
itemResponses = e.response.getItemResponses();
attachment = itemResponses[11].getResponse();

// 日付と元ファイル名を連結させて新しいファイル名を作成する
fileName = (new Date(), "JST","yyMMdd") + '_' + attachment;

// アップロードされたファイルの名前を設定
attachment.setName(fileName);
}

試したこと

トリガーを設定し、フォームから回答しています。

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

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

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

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

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

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

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

sawa

2021/11/10 00:17

var itemResponse と宣言しているのに、itemResponses という sが付いたやつが登場してますが、そこは間違いでは?
aaaaa000

2021/11/24 02:52

ありがとうございます。スペルミスについては修正して試してみます!
aaaaa000

2021/11/24 02:56

スペルミスを更新しましたが、e.responseのところにエラーが出るようです。。 エラー TypeError: Cannot read property 'response' of undefined myFunction @ コード.gs:7
sawa

2021/11/24 09:14

'response' が undefined ということですが、フォーム送信のトリガーで実行されたログでしょうか? エディタの実行ボタンを押して確認しても、eの中身は空なのでそのエラーが出るのは当たり前なのです。
aaaaa000

2021/11/24 23:48

だいぶ時間が経ってしまってうっかりエディタで実行していました…。 結果、ファイルは送れますが、リネームはできません…。 エラーは以下でした… エラー TypeError: itemResponses[7].getItemResponses is not a function at myFunction(コード:7:31) 当方職業プログラマではなく全く基本的なことかと思いますが、因みにここで"itemResponses"と"ItemResponses"の違いは許容されるのでしょうか?(後者はIが大文字)
sawa

2021/11/25 01:09

とりあえず、 itemresponses[7].getResponse() がエラーになるのは、配列は 0スタートなので 7番目の質問は [6] となります。大文字、小文字は厳密にやってください。itemresponsesじゃなくて上の行でitemResponsesとしてますよね。 ただしわかりづらいかもしれませんが、.getItemResponses() は自ら定義している itemResponse とは、まったく別モノです。(メソッドというもの) ざっと見ましたけど訂正箇所が多いので、参考にされたサイトそのままをまずは作成し動くことを確認してから、少しずつ変えた方がよいですよ。その上でどうしてもわからないエラー箇所を質問すべきです。
aaaaa000

2021/11/25 01:53

現行のコードに置き換えました。 やはりできません…。 サンプルは結構特殊な動きをするコードで(環境再現不可能)、最低限必要と思われる箇所のみを抜き出しましたが、無理そうですかね…。
sawa

2021/11/25 05:25

>やはりできません ログの見方は理解されているようですから、単に「できません」ではなく、どういったエラーが出ているのかどこで止まっているのかを確認しましょう。エラーメッセージを切り出して検索してみましょう。 同じようなことを解説しているサイトもあるので、諦めずトライ&エラーを繰り返せば無理ではないです。 "フォーム 添付ファイル GAS リネーム" で検索してみると良いでしょう。 あと、日付のフォーマット箇所の間違いがあるので GAS 日付 あたりでも検索して調べましょう。
aaaaa000

2021/11/25 05:35

エラーコードは同様です。本業ではなくまとまった時間を割くのが厳しいため、今回はペンディングします。 ご回答いただいた方々ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問