我的Google电子表格包含以下列:
我需要一个脚本,当您打开文档时,它将自动在表格中滚动到今天的日期。
答案 0 :(得分:2)
转到今天:
function gotoTodaysDate() {
const ss=SpreadsheetApp.getActive();
const sh=ss.getSheets()[0];//most left sheet
const shsr=2;//data start row
const shsc=1;//date column
const vs=sh.getRange(shsr,shsc,sh.getLastRow()-shsr+1,1).getValues();
const dates=vs.map(function(r){return r[0];});//flattened
const td=Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "dd.MM.yyyy");//current date string
const idx=dates.indexOf(td);
sh.getRange(idx+shsr,1).activate();
}
可安装的onOpen触发器:
function createOnOpenTrigger() {
const ss=SpreadsheetApp.getActive();
if(!isTrigger('gotoTodaysDate')) {
ScriptApp.newTrigger('gotoTodaysDate').forSpreadsheet(ss.getId()).onOpen().create();
}
}
助手功能: 避免为给定功能创建多个触发器
function isTrigger(funcName){
var r=false;
if(funcName){
var allTriggers=ScriptApp.getProjectTriggers();
for (let i=0;i<allTriggers.length;i++){
if(funcName==allTriggers[i].getHandlerFunction()){
r=true;
break;
}
}
}
return r;
}
答案 1 :(得分:0)
您可能不需要脚本执行该操作。
如果您的日期是相反的顺序(即最旧的从上到下,最新的在底部),而您只是想在底部找到最新的日期,则可以单击单元格A1并按Ctrl键以及键盘上的向下箭头键(即Ctrl-▼),您将被带到那里。