javascript - 如果 Date_1 > Date_2 则运行脚本
问题描述
原始工作表在发生变化时使用 IMPORTHTML 将数据获取到 col B,直到最近谷歌开始缓存一些数据时,我一直做得很好
我正在使用
if( New !== Old )
到目前为止工作良好,但现在恢复到以前的数据并添加旧数据,然后在有新数据时更新等等,与依赖该信息的其他表混淆
所以我试图改变为
if( New > Old)
脚本:
function doUpBalanco()
{
// get input sheet
const SS = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Balanço');
const New = SS.getRange('B1').getValue();
const Old = SS.getRange('C1').getValue();
var LR = SS.getLastRow();
var LC = SS.getLastColumn();
if( New !== "-" ) //check if error // Balanço
{
if( New > Old) // check if data changed // Balanço
{
if( Old == "" ) // check if table is blank // YES // Balanço
{
var Data_New_1 = SS.getRange(1,2,LR,1).getValues();
SS.getRange(1,3,LR,1).setValues(Data_New_1);
}
else // check if table is blank // NO // Balanço
{
var Data_New_1 = SS.getRange(1,2,LR,1).getValues();
var Data_Backup = SS.getRange(1,3,LR,LC-2).getValues();
SS.getRange(1,4,LR,LC-2).setValues(Data_Backup);
SS.getRange(1,3,LR,1).setValues(Data_New_1);
}
}
}
};
它没有运行,因为它没有重新调整为 B1 > C1
但是如果我将旧更改为 D1,它会运行
正如我在第 25 - 28 行的支票上显示的那样
我没有使用getDisplayValue而是getValue,所以我有点迷路了
脚本的其余部分运行良好,我基本上只是看不到该检查有什么问题
非常感谢任何见解,谢谢
解决方案
要以数字方式比较日期,请使用Date().valueOf()或Date().getTime();
推荐阅读
- python - Python调试器找不到模块
- c - eBPF:如何从 `struct __sk_buff` 中获取与 sock 关联的套接字
- postgresql - 使用 docker-compose 时出现 Postgres 数据库连接问题
- node.js - 从 Node.js 脚本执行子进程,并将完整的输入和输出转发给它
- angular - 在 Angular 项目中需要一个 dojo 模块
- django - “用户”对象没有属性“is_staff”
- python - 在python中将json文件时间戳格式更改为日期时间的函数
- javascript - “Z”之前的值在 ISO8601 日期字符串中表示什么?
- bash - 如何通过关机触发systemd服务运行shell脚本,暂停直到脚本完成
- r - 在 r 中创建相同大小的循环中的空数据帧并给它们另一个数据帧的列名?