使用insertText在Google工作表上编辑Google表单响应

时间:2018-06-18 17:11:40

标签: google-apps-script google-sheets

我有一个表单,用于在Google表格中存储回复,而我正在尝试做的是表单提交,我想在列中添加或插入文本以将响应转换为超链接。例如,响应为 123456 ,我需要将其转换为 https://www.google.com/123456 。我目前有这个脚本,但我在insertText部分收到错误。

var hyperlink = 'https://www.google.com/' 

function onformsubmit(e){

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Form Responses 1');

var rg = sheet.getRange(1,3,sheet.getLastRow(),1);
var data = rg.getValues();

for(var i=0;i<data.length;i++){
  var datstr=String(data[i][0]).insertText(0,hyperlink);
  data[i][0]= (datstr);
}

rg.setValues(data);
}

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

对于插入部分,我认为你想要的是for循环中的这段代码:

for(var i=0; i < data.length; i++){
  data[i][0] = hyperlink + data[i][0];
}

rg.setValues(data);

这将更改该列中的所有文本以包含修改的超链接。如果您只想在提交表单响应时修改新行,则需要使用e.range,e.values,e.namedValues或某些组合来访问事件参数(e)中的值或范围。请参阅documentation here