0

尝试使用脚本将“#”符号插入单元格时遇到问题(当提交来自表单时触发运行)。

我试图这样做:

somecell.setFormula('=HYPERLINK("http://www.some.link/some/'+var+'#1a2b3c","'+var+'")');

所以输出应该是:

=HYPERLINK("http://www.some.link/some/1234#1a2b3c","1234")

但它始终仅插入(没有 # 和符号后的其余链接)

=HYPERLINK("http://www.some.link/some/1234","1234")

执行过程中没有报错。我应该如何将符号放入脚本中以便将其插入公式中?我曾尝试使用 ...1234(backslash)#1a... 但它不起作用。

编辑 脚本如何工作(简而言之):首先,工作表接收表单提交,其中包含一个 URL 作为条目之一。然后,脚本切断部分链接(使用.split('/').pop()来获取.split创建的数组的最后一个元素)并且提取的变量用于.setFormula如上所示var

另外,我又试了一次;反斜杠不起作用 - (包括) # 之后的所有内容都将被删除。

4

2 回答 2

0

您需要包含反斜杠来转义字符:

function addlink() {
  var somecell = SpreadsheetApp.getActiveSpreadsheet().getRange('F2');
  var blah = "123";
  somecell.setFormula('=HYPERLINK("http://www.some.link/some/'+blah+'\#1a2b3c","'+blah+'")');
  //                                                                ^^^
}
于 2013-07-15T14:32:17.330 回答
0

我试过你的例子是这样的:

function test(){
  var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var xx = '1234'
  sh.getRange('A2').setFormula('=HYPERLINK("http://www.some.link/some/'+xx+'#1a2b3c","'+xx+'")');
}

我得到了预期的结果

在此处输入图像描述

于 2013-07-15T14:51:57.060 回答