我有一个谷歌表格电子表格。第 2 行包含跨多列的日期,例如 25/08/2020、26/08/2020。是否有我可以运行的脚本使其在首次打开文档时跳转到包含当前日期的单元格?
我知道您定义了 OnOpen() 方法,它在打开文档时运行,但是,它正在获取实际工作的代码,这证明很困难。
注意:我查看了Google 电子表格/文档,跳转到 Open 上的当前日期单元格,但解决方案不起作用(我假设是因为我的日期都在一行中)。
我不太了解javascript,我了解一些基础知识。任何帮助将非常感激。
谢谢
您在Google 电子表格/文档中找到的代码,跳转到打开的当前日期单元格对您不起作用,因为它只检查第一列。
我稍微修改了此代码以搜索行中的日期。
根据需要更改 rowWithDates 变量。
function onOpen() { // runs automatically
var rowWithDates = 2; // change as needed
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getActiveSheet();
var range = sh.getDataRange()
var data = range.getValues();
var today = new Date().setHours(0,0,0,0);
var diffref = today;
var diff;
var idx;
for(var n=0;n<range.getWidth();n++){
var date = new Date(data[rowWithDates-1][n]).setHours(0,0,0,0);
diff=today-date;
if(diff==0){break}
Logger.log("diffref = "+diffref+" today-date = diff = "+diff);
if(diff < diffref && diff > 0){idx=n ; diffref=diff}
}
if(n==data.length){n=idx}
n++;
sh.getRange(rowWithDates, n).activate();
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句