谷歌表自定义功能内置功能

时间:2017-05-07 03:14:53

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

我在google工作表中有以下自定义功能,我试图调用内置函数" TEXT"在我的自定义功能,但它不成功。 Google表格会提示"未知"功能" TEXT"。有解决方案吗?

韩国社交协会 利昂

function NextMonth(StockTradeDate) {
  var DeltaDate;
  if (**TEXT**(StockTradeDate,"mmm") = "JAN" ) {
  DeltaDate = 30;
      }
  return DATEVALUE(StockTradeDate) + 31;    
}

2 个答案:

答案 0 :(得分:0)

尝试使用javascript日期方法(如下所示)来驱动您需要的日期和条件。无法在应用程序脚本功能中找到支持Sheets内置函数调用的文档。支持Javascript。

function NEXTMONTH(StockTradeDate) {

  var DeltaDate

    if (StockTradeDate.getMonth() === 0 ) { //Jan:0  Feb:1 ... Dec:11 these will need more conditionals. 
    DeltaDate = 30;
    }

  var date2 = new Date(StockTradeDate.valueOf()+ DeltaDate*24*60*60*1000)
                                   // valueOf() is millisec time since 1/1/1970
  return date2
}

如果您需要有关日期方法和实施的更多信息,w3schools有一个有效的参考。

答案 1 :(得分:0)

Google Apps脚本包含Utilities库,其中包含formatDate方法

Utilities.formatDate(date, timeZone, format)

有关详细信息,请参阅https://developers.google.com/apps-script/reference/utilities/utilities#formatdatedate-timezone-format

值得一提的是,在Google表格中,不可能在脚本中调用内置函数。如果像Utilities这样的服务不包含您正在寻找的功能,那么另一种方法是构建您自己的版本,从库,开源项目或任何其他地方借用它。

我尝试使用Ethercalc的电子表格函数库,并在answerIs there a way to evaluate a formula that is stored in a cell?

上分享了这一点