這是一個多部分問題:我無法在一個明確的語句中簡潔地解釋它。我會嘗試得到一些反饋後,把它清理乾淨:在另一個標籤中查找單元格
在谷歌文檔,我想尋找不同的選項卡(在同一個電子表格),以發現其中包含特定數據的單元格。數據可能會移動,導致無法使用靜態單元格引用。
//如果我的電子表格的 'Sheet2中' 包含以下... ABCD 1 - - - - 2 - 富杆6 3 - - - -
//...then一些神奇的功能將返回C2 = getCell('Sheet2',「bar」)
現在我們已經有了這個單元格,我想要獲取相同行上的相鄰單元格的值。
//這將返回 「foo」 的: = getLeft(getCell( 'SHEET2', 「條」))
//這將返回6 = GetRight時(getCell( 'SHEET2',「 「))
我能夠得到一個滿足上述任務的函數。但是,它是痛苦緩慢!我在大約100多個地方使用這個函數,所以每次我改變一些東西時,這會使得表單在計算上超時。
任何人都可以建議如何獲得相同的功能,但具有更好的性能?
function getCell(sheetname, item, row_offset, default_string)
{
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetname);
var lastrow = sheet.getLastRow();
var lastcol = sheet.getLastColumn();
for(var c = 1; c <= lastcol; c++)
{
for(var r = 1; r <= lastrow; r++)
{
var range = sheet.getRange(r, c);
if(range.getValue() == item)
{
//item found! See if we can get the requested cell...
c = c + row_offset; //adjust column using given offset
if(c < 1 || c > lastcol)
return "E.offset";
else
return sheet.getRange(r,c).getValue();
}
}
}
return default_string;
}