google-apps-script - 在使用 Apps 脚本创建的谷歌表单中添加换行符
问题描述
我正在从电子表格中获取内容并通过 Google Apps 脚本将其添加为表单中的项目。当我在单元格中有多行文本(带有新换行符的文本)时,在生成表单时,它会出现在一行中。我需要和我在工作表中给出的完全一样。有没有办法使用 Apps 脚本来实现这一点?
这是我用来将数据从 Sheet 复制到 crate 表单中的代码:
var ss = SpreadsheetApp.openByUrl(mySheetURL);
var sheet = ss.getSheets()[0];
var cellRange = 'C2:C6'
var ques = sheet.getRange(cellRange).getValues();
var newForm = FormApp.openByUrl(myformURL);
var QOD = newForm.addMultipleChoiceItem();
QOD.setTitle(ques);
我的电子表格单元格中的内容:
形式内容:
解决方案
Apps 脚本按预期从表格检索和传递换行符到表单
唯一的问题是如何检索值:
cellRange[1][1]
不是一个有效的请求,因为范围是一个类,而不是一个二维数组。相反,它
values
确实会为您返回一个网格,您可以通过它们的索引检索网格元素。请注意,索引以 [0] 开头,而不是 [1]。因此
getRange(cellRange).getValues()[1][1]
会返回您,null
因为cellRange = 'C2:C6'
它只包含一列并且它具有索引 [0]。
正确要求:
var ss = SpreadsheetApp.openByUrl(mySheetURL);
var sheet = ss.getSheets()[0];
var cellRange = 'C2:C6'
var ques = sheet.getRange(cellRange).getValues()[0][0];
//also possible: var ques = sheet.getRange('C2').getValue();
var newForm = FormApp.openByUrl(myformURL);
var QOD = newForm.addMultipleChoiceItem();
QOD.setTitle(ques);
推荐阅读
- javascript - javascript cookie 的过期日期不起作用 - 已更新
- jenkins - 从 Eclipse 触发 jenkins 工作
- macos - OS X pip3 被 brew install python3.6.5_1 破坏
- react-native - 如何在 iOS 上从源代码使用 React Native?
- sql-server - SQL Server:在远程服务器上运行存储过程以删除数据
- android - 切换活动冻结动画
- vim - 我如何获得不同版本的 vim 以忽略 ~/vimrc 中它们不是插件的部分?
- python - 在 sklearn.preprocessing 模块中,我得到 ValueError: Found array with 0 feature(s)
- python - “使用 IDLE 编辑”选项缺少 Python 3.6
- mysql - 输出最大()时间戳返回空值 sql, mysql