google-apps-script - 已关闭:刷新页面后 Google 表单中的数据消失
问题描述
我使用谷歌电子表格中的数据编写了一个谷歌脚本,它正在创建表单。我正在使用下拉答案选项。代码工作正常,出现所有数据,但有时(3次5次尝试),刷新浏览器页面后,一些问题消失了。每次都是不同的问题,所以具体问题没有问题。有什么问题,我该如何解决?
UPD:已解决。问题出在编译代码时打开的 Google 表单中。
function myFunk(){
var SHEET_ID = FormApp.getActiveForm().getDestinationId();
var ss = SpreadsheetApp.openById(SHEET_ID);
var form = FormApp.getActiveForm();
var sheets = ss.getSheets();
var numb = sheets[1].getLastRow();
var TypeSelect = form.addListItem()
.setRequired(true);
var TypeChoices = getData(TypeSelect,sheets[1],1,numb)
TypeSelect.setChoices(TypeChoices);
var ClientSelect = form.addListItem()
.setRequired(true)
var ClientChoices = getData(ClientSelect, sheets[1],2,numb)
ClientSelect.setChoices(ClientChoices);
var phases = ["Start","End"];
var PhasesChoices=[];
var PhaseSelect = form.addMultipleChoiceItem()
.setRequired(true);
for (var t=0;t<phases.length; t++){
PhasesChoices.push(PhaseSelect.createChoice(phases[t]));
}
PhaseSelect.setChoiceValues(phases);
}
function getData(DataSelect,sheet,numbColumn,lRow){
var DataChoices = [];
var DataValues = sheet.getRange(2,numbColumn,lRow,1).getValues()
.filter(CheckFull);
var data = [];
for(var i = 0; i < DataValues.length; i++) {
data.push(DataValues[i]);
}
for(var j =0; j < data.length; j++) {
DataChoices.push(DataSelect.createChoice(data[j]));
}
return DataChoices;
}
function CheckFull(value){
return value != '';
}
解决方案
推荐阅读
- mercurial - 网站 mercurial-scm.org 是否不再使用?
- java - 返回 (n > 2) ? n = 5:n = 4;不工作?
- javascript - 如何解决在节点应用程序中禁用的 body-parser 模块?
- python - 我如何使用 python 3.8 下载 tensorflow
- python - 谁能帮我理解,下面的代码是如何工作的?
- python - 通过 Python 拆分命令行输出
- reactjs - React 和 .Net Core Web API:Axios API 显示状态“待定”。无法获得想要的数据
- powershell - 保存 Office 365 邮箱中的电子邮件附件
- php - :SQLSTATE [HY000]:一般错误:1364 字段
- flutter - 如何在颤振中使用 googleapis 包将视频上传到 YouTube?