我已經設置了一個腳本,可以將現有答案從Google表格插入到Google表單中(通過修改this answer中的代碼)。我將它插入到表單腳本中,並且它在表單中的所有字段都被填充時起作用。然而,表格調查問卷的性質是這樣的,某些章節可能會被跳過,因此表格中的一些字段爲空。我想插入這樣的表格,其中一些答案字段留空。如何在將Google表格的答案插入到Google表格中時插入空白字段
當工作表中的所有字段都已填充時,該腳本將工作,但在遇到空白字段時不起作用(這意味着第一行包含任何空白字段的答案會停止腳本的執行)。
我想知道的是如何解釋我的腳本,它應該只接受空白答案並插入它們?
這裏是腳本:
function ApendResponses() {
var form = FormApp.openById("1M-mTBlZPRj44jXs_YHj-cNa9yHjU25ItEWBuKtUvKZo");
var sheet = SpreadsheetApp.openByUrl("https://ocs.google.com/spreadsheets/d/1Jc9NVlN-Wcmd87E-FnyocHgl5Vx2WXqOGPTkhvXjCFU/");
var rows = sheet.getDataRange();
var numRows = rows.getNumRows();
var values = rows.getValues();
for (var x = 0; x < values.length; x++) {
var formResponse = form.createResponse();
var items = form.getItems();
var row = values[x];
var formItem = items[0.0].asTextItem();
var response = formItem.createResponse(row[1]);
formResponse.withItemResponse(response);
var formItem = items[1.0].asTextItem();
var response = formItem.createResponse(row[2]);
formResponse.withItemResponse(response);
var formItem = items[2.0].asListItem();
var response = formItem.createResponse(row[3]);
formResponse.withItemResponse(response);
var formItem = items[3.0].asPageBreakItem();
formResponse.withItemResponse(response);
var formItem = items[4.0].asListItem();
var response = formItem.createResponse(row[4]);
formResponse.withItemResponse(response);
var formItem = items[5.0].asPageBreakItem();
formResponse.withItemResponse(response);
var formItem = items[6.0].asListItem();
var response = formItem.createResponse(row[5]);
formResponse.withItemResponse(response);
var formItem = items[7.0].asPageBreakItem();
formResponse.withItemResponse(response);
var formItem = items[8.0].asTextItem();
var response = formItem.createResponse(row[6]);
formResponse.withItemResponse(response);
formResponse.submit();
Utilities.sleep(500);
}
};
例Form is here,以其accompanying Sheet here(I第三行用於測試目的在左空白字段)。