在自定义功能中使用内置功能

时间:2014-09-17 22:24:57

标签: google-apps-script google-sheets custom-function

在Google表格中,我希望自定义功能可以使用其中一个内置功能。具体来说,此函数将字符串作为参数,梳理另一个工作表以找到该值,然后返回指向该单元格地址的链接。

function href(findMe) {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var hrefSheet = ss.getSheetByName("otherSheet");
  hrefSheet.activate();
  var rows = hrefSheet.getDataRange(); 
  var numRows = rows.getNumRows(); 
  var finds = rows.getValues()[1][0];

  var hrefCellRow;

  for(var i=0; i<numRows; i++){
    if(finds[i][0] == findMe){
      hrefCellRow = i+1;
      break;
    }
  }

  return address(hrefCellRow, 1); //address() is a function that is built in to sheets

}

所以,如果我有一个值&#34; XYZ&#34;在&#34; otherSheet&#34;表格,当我输入

=href("XYZ")

我希望尝试找到值XYZ并将地址返回给活动单元格。如果它返回一个实际的链接,当点击时,会转到该单元格,这是额外的荣誉。

1 个答案:

答案 0 :(得分:1)

我之前没想过这个。我可以在脚本之外使用地址函数,并在内置函数中嵌入自定义函数(而不是反向,我试图这样做)。它不是那么漂亮,但它只是

=address(href(findMe),1)

还是没有找到一种方法链接到另一个单元格,而不是创建一个可以重置活动单元格的函数?