微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 excel javascript api 将 DATEVALUE 转换为日期

如何解决如何使用 excel javascript api 将 DATEVALUE 转换为日期

我正在使用 office.js 进行新开发,我想知道是否有办法将序列号(日期值)转换为使用 Excel Javascript API 格式化的日期。

我有这个自定义函数

/*
 * @customfunction
 * @param {number} first
 * @param {number} second
 * @param {string} third
 * @returns {number[][]}
 */

  function GETDADOS(first,second,third) {
    var promise = new Promise(function(resolve){
      $.ajax({
        ...
        //HTTP requisition
        ...
        }
      });
    })
    return promise.then(function(result){
      var data = result
      var resp = JSON.parse(data)
      return resp
    })
  })
  }; 

这为我提供了这个输出

[[44225,1.8541],[44232,1.874],[44239,1.94]]

第一列是要转换的日期值。

前:美国 35062 -> 12/29/2021,英国 35062 -> 29/12/2021

我是这么看的,但我觉得有点困惑:

convert date serial number to date using javascript

解决方法

您可以使用 Excel JavaScript API 调用内置的 Excel 工作表函数 TEXT

await Excel.run(async (context) => {
    var res = context.workbook.functions.text(44225,"mm/dd/yy");
    res.load("value");
    await context.sync();
    console.log(res.value); // "01/29/21"
  });

请注意,要从您的自定义函数调用 Excel JavaScript API,您需要使用共享的 JavaScript 运行时。有关详情,请参阅 Configure your Office Add-in to use a shared JavaScript runtime

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。