我正在使用多页表单完成4个不同任务的任务,这些任务基于对第一页上第一个问题的第一个响应。其中之一是根据表单响应创建新工作表。我想创建一个新工作表,如果尚未根据“选择工人:”问题的响应创建一个工作表,如果是,则将响应移动到该工作表。我发现另一个问题的功能完全有效,除了我无法将表单重命名为问题的响应,即“工人姓名”。
yes you can save the array of dictionary.allkeys, then put it in the for loop.
let arrayOFKeys = dictionary.allKeys
for(int i=0;i<arrayOFKeys.count;i++)
{
dictionary.valueforKey(arrayOFKeys.objectAtIndex[i]) // here you will get value and key(root) as well
//key = arrayOFKeys.objectAtIndex[i]
//value = dictionary.valueforKey(arrayOFKeys.objectAtIndex[i])
}
我不确定我是否遗漏了什么。任何帮助是极大的赞赏。谢谢你提前。
答案 0 :(得分:0)
我认为问题是namedValues
中的所有条目都是arrays。尝试将e.namedValues['Select The Worker:']
更改为e.namedValues['Select The Worker:'].toString()
答案 1 :(得分:0)
根据Google Apps documentation,表单提交对象函数.namedValues()
返回对象,您需要将带有字符串数据类型的变量或对象传递给方法.insertSheet(sheetname)
改为实施。
var destSheet = getSheet(ss, e.namedValues['Select The Worker:'][0]);
您只需要在对象内指定数组的索引。