情況: 我每天都有一張紙。示例:2022 年 1 月 18 日 > 作業表名稱為 18/01/2022
當我打開 google 電子表格檔案時,名稱為 18/01/2022 的作業表將變為活動狀態。我使用下面的腳本來做到這一點。
function onOpen() {
gotoPage();
}
function gotoPage() {
const ss = SpreadsheetApp.getActive();
const name = Utilities.formatDate(new Date(),ss.getSpreadsheetTimeZone(),"MM/dd/yyyy");
const sh = ss.getSheetByName(name);
sh.activate();
}
問題/問題: 所有具有過去日期的作業表仍在 Google 電子表格中。打開作業表時,我可以添加一個腳本來洗掉/隱藏具有過去日期的作業表嗎?示例:當我在 20/01/2022 打開作業表時,所有日期在 20/01/2022 之前的作業表都應洗掉或隱藏。
謝謝!
uj5u.com熱心網友回復:
嘗試
function onOpen() {
gotoPage();
}
function gotoPage() {
const ss = SpreadsheetApp.getActive();
var name = Utilities.formatDate(new Date(),ss.getSpreadsheetTimeZone(),"dd/MM/yyyy");
var sh = ss.getSheetByName(name);
sh.activate();
var sheets = ss.getSheets()
sheets.forEach(function(sh){
if (sh.getName().match(/[0-9]{2}\/[0-9]{2}\/[0-9]{4}/)){
name = name.replace(/([0-9]{2}).*([0-9]{2}).*([0-9]{4})/g, '$3-$2-$1')
var newName = sh.getName().replace(/([0-9]{2}).*([0-9]{2}).*([0-9]{4})/g, '$3-$2-$1')
if (newName < name) {
// ss.deleteSheet(sh) // to delete
sh.hideSheet() // to hide
}
}
})
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/416106.html
標籤:
上一篇:IF陳述句即使為真也回傳假
