相关疑难解决方法(0)

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

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

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

}
Run Code Online (Sandbox Code Playgroud)

因此,如果我在"otherSheet"表单中有一个值"XYZ",那么当我输入时

=href("XYZ")
Run Code Online (Sandbox Code Playgroud)

我希望它尝试找到值XYZ并将地址返回到活动单元格.额外的荣誉如果它返回一个实际的链接,当点击,进入该单元格.

google-sheets google-apps-script custom-function

10
推荐指数
1
解决办法
3479
查看次数

从毫秒计算周数,天数和小时数

有很多类似的问题,但没有一个解决这个问题.使用javascript我很容易找到ex的毫秒数差异b/w 2日期:

var mil = Math.floor(new Date("1/1/2012")  - new Date("1/7/2012"))
Run Code Online (Sandbox Code Playgroud)

mil 被安排了 518400000

我会在下面做几周

var weeks = mil / (1000*7*24*60*60);
Run Code Online (Sandbox Code Playgroud)

在上面的例子中它恰好适合1一周.对于其他可能的输入,我想得到输出为ex:

n Weeks, y days , z hours
Run Code Online (Sandbox Code Playgroud)

所以我做mil % (1000*7*24*3600)了模数,并从余数计算天数.但令人惊讶的是,这是我从控制台得到的答案, 1 weeks , 6 days似乎之前计算的一周也是再次占了几天.

我该如何正确计算?

javascript date hour days

5
推荐指数
2
解决办法
8445
查看次数