![](/img/trans.png)
[英]TypeError: Cannot read property 'Values' of undefined (line 37, file “Code”) - Google Apps Scrit
[英]Google Apps Script: TypeError: Cannot read property 'values' of undefined (line 3, file "Code")
首先,感謝 NEWAZA 編寫了這個驚人的代碼!
其次,請參考 StackOverflow 鏈接/問題。
Google Apps腳本自動復制一行逗號出現在保留基本信息的列中的次數?
function onSubmit(e) {
Logger.log(JSON.stringify(e.values))
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(`onSubmit`)
const [timestamp,emailAddress,companyName,_,phoneNumber,firstName,lastName,locations,city,state,zipCode,dateRequested,...rest] = e.values;
locations.split(`,`).forEach(i => sheet.appendRow([firstName, lastName, i.trim(), city, state, zipCode, dateRequested]))
}
最后,我在代碼中遇到錯誤。 另外,如果我想在 Google 表單中添加新的列或問題,是否會像在腳本中添加標題文本和其他常量一樣簡單?
通常,您收到的錯誤表明沒有e
或event object
傳遞給函數。 我的猜測是您試圖在設計要求的表單響應之外運行此功能。 (該函數使用來自表單響應的值,沒有表單響應 - 沒有值)。
此代碼在添加/刪除問題方面的最佳維護將是確保每個常量/變量對應於表單響應中的正確值。
在表單響應中查看每個索引、問題和答案的一個方便技巧是將以下代碼段添加到onSubmit()
函數的頂部:
function onSubmit(e) {
Object.entries(e.namedValues).forEach(([key, value], index) => {
Logger.log(`[${index}] "${key}" : "${value}"`)
})
// Rest of code goes here.
}
提交響應后,您可以檢查Execution Logs
並查看常量/變量應如何對齊。
本質上,您的常量/變量必須等於響應答案。
希望這可以幫助! 如果我遺漏了任何內容,或者您需要進一步解釋,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.