我想在腳本編輯器中創建一個函式,允許我從另一個作業表上的單元格輸入資料,而不必在公式中輸入“sheet1!A1”。
假設我在 A1 中有作業表名稱,并希望回傳該作業表第一行和第一個列(即 A1)中的數字。我想用一個像getcell(A1,1,1)這樣簡單的公式來顯示這個值
這是我得到的,但我收到一條錯誤訊息“例外:找不到范圍(第 4 行)”
function getcell(sheetName,row, col) {
var ss = SpreadsheetApp.getActive()
var range = ss.getSheetByName(sheetName).getRange(row, col)
ss.getRange(range).getValue();
}
uj5u.com熱心網友回復:
我相信你的目標如下。
- 您想
A1通過放入單元格以 A1Notation 的形式回傳=getcell(A1,1,1)。 - 您想使用自定義函式來實作這一點。
在這種情況下,如何進行以下修改?
修改后的腳本:
function getcell(sheetName, row, col) {
var ss = SpreadsheetApp.getActive()
var range = ss.getSheetByName(sheetName).getRange(row, col);
var res = range.getA1Notation();
return res;
}
- 在您的腳本中,
range用于getRange(range). 這樣,就會發生這樣的錯誤。 - 為了回傳 A1Notation,
getA1Notation()使用了。 - 如果要回傳單元格值,請修改
getA1Notation()為getValue().
參考:
- getA1Notation()
uj5u.com熱心網友回復:
三個小修正:
您需要在引號中傳遞作業表名稱
您試圖獲得范圍兩次
對于自定義功能,您需要回傳值
示例代碼:
function getcell(sheetName,row, col) {
var ss = SpreadsheetApp.getActive()
var range = ss.getSheetByName(sheetName).getRange(row, col)
return range.getValue();
}
示例呼叫:
=getcell("Sheet1",1,1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/419608.html
標籤:
上一篇:將3個谷歌電子表格同時匯入另一個
