gpt4 book ai didi

google-apps-script - 如何在谷歌脚本编辑器中的1到30(31,按月)单元格中自动设置整个月的日期和天数?

转载 作者:行者123 更新时间:2023-12-02 19:46:36 24 4
gpt4 key购买 nike

这是显示 12 月日期和天数的图像。我需要在每个月的第一天自动备份一张工作表,但在备份工作表中创建的月份和日期应该更改为当前的。如图所示,在下个月的 12 月执行触发器时,它应该将 1 月的 1 更改为 31,并且下一列中也包含天数,如图所示。 (根据月份,应将日期设置为 30 或 31 或 2 月的 28)。我的备份表创建部分工作正常,只是我想知道如何设置此日期和天数。

enter image description here

最佳答案

创建本月工作表

代码:

function createThisMonth() {
var ss=SpreadsheetApp.getActive();
var shn=Utilities.formatDate(new Date(),Session.getScriptTimeZone() ,"MMM-yyyy");
var sh=ss.getSheetByName(shn);
if(!sh) {
var sh=ss.insertSheet(shn,0);
}
var dA=[];
var cA=[];
var days=parseInt(Utilities.formatDate(new Date(new Date().getFullYear(),new Date().getMonth()+1,0), Session.getScriptTimeZone(), "d"));
for(var d=1;d<=days;d++) {
var c1=Utilities.formatDate(new Date(new Date().getFullYear(),new Date().getMonth(),d),Session.getScriptTimeZone() , "d-MMM-yyyy");
var c2=Utilities.formatDate(new Date(new Date().getFullYear(),new Date().getMonth(),d),Session.getScriptTimeZone() , "E");
var c9=Utilities.formatDate(new Date(new Date().getFullYear(),new Date().getMonth(),d),Session.getScriptTimeZone() , "HH:mm:ss");
dA.push([c1,c2,0,0,0,0,0,0,c9,'']);
cA.push(['#ffffff','#ffffff','#ffff00','#ffff00','#ffff00','#ffff00','#ffff00','#ffff00','#00ff00','#ff0000']);
}
sh.getRange(1,1,dA.length,dA[0].length).setValues(dA);
sh.getRange(1,1,dA.length,dA[0].length).setBackgrounds(cA);
}

运行此命令来创建触发器:

function createTriggerForcreateTheMonth() {
if(!isTrigger('createThisMonth')) {
ScriptApp.newTrigger('createThisMonth').timeBased().onMonthDay(1).atHour(1).create();
}
}

辅助函数:

function isTrigger(funcName){
var r=false;
if(funcName){
var allTriggers=ScriptApp.getProjectTriggers();
for(var i=0;i<allTriggers.length;i++){
if(funcName==allTriggers[i].getHandlerFunction()){
r=true;
break;
}
}
}
return r;
}

工作表:

enter image description here

关于google-apps-script - 如何在谷歌脚本编辑器中的1到30(31,按月)单元格中自动设置整个月的日期和天数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59123281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com