google-apps-script - 谷歌表格 - 希望在输入日期超过今天的日期后隐藏行
解决方案
尝试这个:
function hideOldRows(){
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=sh.getDataRange();
var vA=rg.getValues();
var dt=new Date();
var tdv=new Date(dt.getFullYear(),dt.getMonth(),dt.getDate()).valueOf();
for(var i=1;i<vA.length;i++) {
if(new Date(vA[i][2]).valueOf()<tdv){
sh.hideRows(i+1);
}
}
}
如果与触发器一起使用:
function hideOldRows(e){
var rg=e.range;
var sh=rg.getSheet();
var inclA=['Patrick'];//You can add other sheet names to the included list of sheets. The function will return for other sheets on the next line.
if(inclA.indexOf(sh.getName())==-1){return;}
var rg=sh.getDataRange();
var vA=rg.getValues();
var dt=new Date();
var tdv=new Date(dt.getFullYear(),dt.getMonth(),dt.getDate()).valueOf();
for(var i=1;i<vA.length;i++) {
if(new Date(vA[i][2]).valueOf()<tdv){
sh.hideRows(i+1);
}
}
}
您不能从脚本编辑器运行此函数,因为 onEdit 触发器在此函数中提供了一个由该函数中的字母 e 表示的事件对象,这是该函数所必需的。请阅读此参考
推荐阅读
- python - 对链表进行排序(交换节点)
- spring-boot - EntityManager 配置以获取数据 Oracle DB - SpringBoot
- firebase - 使 firebase 域指向 EC2 GCP 实例 IP 地址
- matlab - 在分类文本问题上实施 BERT 时出现的错误
- javascript - PR 评论不适用于 lighthouse-check-action(github 操作)
- python - 确保所有基于字段的列表项有效地存在于表中
- python - 对每一行的列值求和
- c# - c# system.componentmodel.win32exception access is denied when访问explorer.exe获取当前登录用户名
- excel - 将 Qlikview 十六进制日期转换为普通日期
- c++ - 使用 GNSS-SDR 的 GLONASS 信号发生器