使ったことないのですが,公式ドキュメントを読む限り,
- var itemResponses = a.response.getItemResponses();
+ var itemResponses = a.getResponses()[0].getItemResponses();
ではないのですか?
FormApp.openById(formId)
でa
に代入したオブジェクトはForm
ですが,これにresponse
というメソッド1はなさそうです.代わりにgetResponses()
ならありますので,これを利用します.また,getResponses()
はFormResponse
の配列を返していますので,そこから各アイテムを抜き出すために上のように書き直すのだと思いました.
こちらでも試してみましたが,a.response
はnull
でした.
特にエラーは表示されないのですが
とのことですが,エラーは出ているはずです.a.response
すなわちnull
にはgetItemResponses()
は存在しませんので,TypeError
が出るはずです.もし本当にエラーが出ていないのであれば,ここ以外に原因があるため,情報不足で解決案を提案できません.
また,上記コードでは1つしかアイテムを取得できていないので,全て取得したいのであれば次のコードが参考になりそうです.
ネット上のウンコードを信頼して書き写すより,公式ドキュメントを読んで書くことをお勧めします.
-
もはやメソッドの書き方(カッコで終わるやつ)じゃなくて変数へのアクセスをするような書き方になっています...普通はここで異常に気づいてほしいところですね.もっと言うとGASを書いているときに出てくるコードヒント/補完に存在しないメソッドを記述していることに気づいてほしいです. ↩