2017-03-01 33 views
0

我有一個包含大量命名範圍的電子表格,並且我想要一個提供超鏈接的內容列表以跳轉到它們。以編程方式在表格中建立指向範圍的超鏈接

在UI我可以創建一個超鏈接到一個名爲範圍,這與格式結束:

https://docs.google.com/spreadsheets/d/xxxxx/edit#rangeid=yyyyy

其中xxxx是一個漫長的電子表格標識,而yyyy是一系列數字。

由於我有很多這些,我想用Google Apps腳本以編程方式生成所有這些鏈接。我可以使用Spreadsheet.getRangeByName找到命名的範圍對象,但我無法找到從此獲取rangeid的方法。

+1

參見[NamedRange類文檔](https://developers.google .com/apps-script/reference/document/named-range)在那裏你會發現getId() –

+0

不幸的是,該文檔是用於Google文檔,而不是Google表格。我今天下午打了幾次! –

+0

對不起,錯了。 [試試這個](https://developers.google.com/apps-script/reference/spreadsheet/named-range) - 沒有ID ... –

回答

0

它不會出現,這是可能的,但作爲一種解決方法,Karl_S使用一系列鏈路,其不工作提示:

function createNamedRangeUrl(name) { 
    var root = SpreadsheetApp.getActiveSpreadsheet(); 
    var range = root.getRangeByName(name); 
    var sheetId = range.getSheet().getSheetId(); 
    var rangeCode = range.getA1Notation(); 
    return ("https://docs.google.com/spreadsheets/d/" + 
    root.getId() + "/edit#gid=" + sheetId + "&range=" + rangeCode); 
} 
相關問題