iT邦幫忙

0

[已妥協解決]請問使用google script抓google form表單reply的最新資料顯示不出來的問題

  • 分享至 

  • xImage

如問題主旨

我使用表單回復時會出發trigger的方式

但當我讀取表單的getLastRow()

會顯示[, , , ]

但讀取getLastRow()-1就能讀取到前一次輸入的資料

  • 解決方法:寫入睡眠function 在觸發條件的function底下
    function autoUpdate(e) {
    // Set a comment on the edited cell to indicate when it was changed.
    var range = e.range;
    Utilities.sleep(120000);
    setUpCalendar()
    }

已確保表單的更新一定能完成

  • 待解決:

同時有兩個人同時回應表單的壓力測試

附上程式碼
function autoUpdate(e) {
var id = '網址id';
var spreadsheet = SpreadsheetApp.openById(id);
var sheet = spreadsheet.getSheets()[2]; // 要第幾個sheet? 0 就是第一個
var range = e.range;
var new_row = range.getLastRow();
var data = sheet.getRange(new_row,3,1,13).getValues();
setUpCalendar(data)
}
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
Richie
iT邦新手 5 級 ‧ 2022-11-15 09:46:14

我本來就是用這個方法,但....表單後來更新跟不上trigger的觸發,我妥協的作法是強迫睡眠在觸發。

Richie iT邦新手 5 級 ‧ 2022-11-16 09:04:48 檢舉

請問改不上trigger的觸發是什麼意思? trigger不可以更改嗎?
我記得trigger可以刪掉重建

@Richie 跟不上*

我要發表回答

立即登入回答