google-apps-script - 如何根据日期值将一行移动到另一个工作表
问题描述
我想根据日期值将一行移动到另一个选项卡。即,如果数据比今天早 90 天,则 Sheet1 中的行应自动传输到另一个 Sheet2。
这可能吗,你能帮我写这个函数的脚本吗?
注意:我需要从 Sheet1 中完全删除该行。
解决方案
移动 90 天前的行
function moveRows90DaysOld() {
var v=new Date().valueOf()-(1000 * 60 * 60 * 24 * 90);
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Sheet177');
var tsh=ss.getSheetByName('Sheet178');
var rg=sh.getDataRange();
var vA=rg.getValues();
var d=0;
for(var i=0;i<vA.length;i++) {
if(new Date(vA[i][0]).valueOf()<v) {
tsh.appendRow(vA[i]);
sh.deleteRow(i+1-d++);
}
}
}
推荐阅读
- c - C 格式说明符大小
- javascript - 如果没有点击链接,则显示所有 div
- gradle - Gradle 在多项目中共享属性
- testing - 无法安装我自己的 Firefox AddOn(文件似乎已损坏)
- sql - 当数据集很大时,有什么技巧可以避免或降低一对多连接和非等连接的成本?
- spring - 如何更改默认的 Spring Boot oauth url(/login/oauth2/code 和 /oauth2/authorization)?
- php - PHP打印页面的特定部分
- r - 按下关闭按钮时,有没有办法擦除 bsModal() 窗口的内容?
- docker - 你如何 dockerize 一个 WebSocket 服务器?
- python - 如何根据登录的用户限制多对多字段中的选择?