![](/img/trans.png)
[英]How to check if the user is idle and switch tabs? via script (Google Spreadsheet - GAS)
[英]Insertion of number sign (#) into a Google Spreadsheet via GAS
嘗試使用腳本在單元格中插入“#”符號時遇到了一個問題(當提交來自表單時會觸發運行)。
我試圖這樣做:
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(反斜杠)#1a ...,但不起作用。
編輯腳本的工作原理(簡而言之):首先,工作表接收帶有URL的表單提交作為條目之一。 然后,腳本切斷鏈接的一部分(使用.split('/') ,然后使用.pop()來獲取.split創建的數組的最后一個元素),提取出的變量用於.setFormula中。在上面被視為var 。
另外,我再次嘗試過; 反斜杠不起作用-刪除#(包括)之后的所有內容。
您需要添加一個反斜杠來轉義該字符:
function addlink() {
var somecell = SpreadsheetApp.getActiveSpreadsheet().getRange('F2');
var blah = "123";
somecell.setFormula('=HYPERLINK("http://www.some.link/some/'+blah+'\#1a2b3c","'+blah+'")');
// ^^^
}
我嘗試了這樣的示例:
function test(){
var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var xx = '1234'
sh.getRange('A2').setFormula('=HYPERLINK("http://www.some.link/some/'+xx+'#1a2b3c","'+xx+'")');
}
我得到了預期的結果
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.