Nab*_*335 1 google-apps-script
我想将像这样的日期转换为数字格式,但我在谷歌应用程序脚本中找不到任何方法来执行此操作例如我的“L2”单元格中有一个日期,所以我得到这样的值:
date = active_sheet.getRange("L2").getValue()
Run Code Online (Sandbox Code Playgroud)
如何将日期变量转换为数字格式(整数)?例如,今天的日期以数字格式表示为 44 000
提前致谢
我相信您想使用 Google Apps 脚本将日期对象或日期字符串转换为序列号。
从“我认为这是一个日期对象但我不确定”来看,我认为可以考虑两种模式。
在此模式中,假设 的值date = active_sheet.getRange("L2").getValue()是日期对象。示例脚本如下。
var active_sheet = SpreadsheetApp.getActiveSheet();
var date = active_sheet.getRange("L2").getValue();
var serialNumber = (new Date(date.getTime() - (1000 * 60 * date.getTimezoneOffset())).getTime() / 1000 / 86400) + 25569; // Reference: https://stackoverflow.com/a/6154953
console.log(serialNumber);
Run Code Online (Sandbox Code Playgroud)
在此模式中,假设 的值date = active_sheet.getRange("L2").getValue()是类似 的字符串值dd/mm/yyyy。示例脚本如下。
var active_sheet = SpreadsheetApp.getActiveSheet();
var date = active_sheet.getRange("L2").getValue(); // or getDisplayValue()
var [d, m, y] = date.split("/");
var dateObj = new Date(y, m - 1, d);
var serialNumber = (new Date(dateObj.getTime() - (1000 * 60 * dateObj.getTimezoneOffset())).getTime() / 1000 / 86400) + 25569; // Reference: https://stackoverflow.com/a/6154953
console.log(serialNumber);
Run Code Online (Sandbox Code Playgroud)
21/04/2022对于上述两个脚本,当使用 的样本值时,44672都会返回 。
| 归档时间: |
|
| 查看次数: |
2318 次 |
| 最近记录: |