0
ss.getRangeByName('name').
返回一個範圍。但是它不應該返回一個NamedRange對象,因爲它顯然被命名了?這導致現在不得不調用getNamedRanges()方法,該方法返回一個數組中的所有NamedRange對象,如果可能,我會盡量避免。獲取命名範圍對象的名稱而不獲取命名範圍數組 - 谷歌表格
ss.getRangeByName('name').
返回一個範圍。但是它不應該返回一個NamedRange對象,因爲它顯然被命名了?這導致現在不得不調用getNamedRanges()方法,該方法返回一個數組中的所有NamedRange對象,如果可能,我會盡量避免。獲取命名範圍對象的名稱而不獲取命名範圍數組 - 谷歌表格
據我所知,它是如預期運行。正如文件中指出:如果沒有一系列具有給定名稱找到
- 返回一個命名的範圍,或者爲null。如果多張電子表格使用相同的範圍名稱,請指定表格名稱而不帶附加引號 - 例如,
getRangeByName('TaxRates') or getRangeByName('Sheet Name!TaxRates'), but not getRangeByName('"Sheet Name"!TaxRates')
。
在此代碼中,而不是列出所有命名範圍和訪問範圍。我們使用getRangeByName(name)
直接訪問該範圍,因爲它返回Range
。
// Log the number of columns for the range named 'TaxRates' in the active spreadsheet.
var range = SpreadsheetApp.getActiveSpreadsheet().getRangeByName('TaxRates');
if (range != null) {
Logger.log(range.getNumColumns());
}
希望這會有所幫助。
感謝您的文檔,我想我的觀點是這樣的:如果我決定將getRangeByName的返回值放入說,變量'範圍' - 我無法以後檢查範圍的名稱(即使我知道它有一個!)。我想這是因爲Range對象不能算作名字,只有NamedRange會有這個名字。然而,我得到這個,它很煩人,它可能會返回'null'或者其他東西來避免這個問題。你來自哪裏? –