电子表格.用于调整求和函数的脚本



我有一个电子表格,里面大约有90张纸。

  1. 第一张纸上是我们的工人工时表。
  2. 在第二个 工作表是一个求和函数,它在第一个显示结果 表(它只是总结了小时(。

    我只需要为其余 90 张纸中的几个单元格添加 sum 函数。这就是功能,所有单元格仅在不同的工作表上始终相同。

    =SUMA(Sheet2'!B11;'Sheet2'!G11;'Sheet2'!L11;'Sheet2'!Q11;'Sheet2'!V11;'Sheet2'!AA11;'Sheet2'!AF11)

当我选择表格以保持单元格相同但将工作表更改为下一个时,有没有办法通过"拖动"小 +?手动执行此操作将花费很长时间。

下一张 相同范围

function nextSheetSameRange() {
var ss=SpreadsheetApp.getActive();
var ash=ss.getActiveSheet();
var arg=ash.getActiveRange();
var argA1=arg.getA1Notation();
var shts=ss.getSheets();
for(var i=0;i<shts.length;i++) {
if(ash.getName()==shts[i].getName()) {
var currentIdx=i;
break;
}
}
if(currentIdx<shts.length-1) {
nextSh=shts[currentIdx+1];
}else{
nextSh=shts[0];
}
var nsh=ss.setActiveSheet(nextSh);
SpreadsheetApp.flush();
var nrg=nsh.getRange(argA1);
nsh.setActiveRange(nrg);
}
function makeSidebar() {
var ss=SpreadsheetApp.getActive();
var html='<input type="button" value="next" onClick="google.script.run.nextSheetSameRange()" />';
var userInterface=HtmlService.createHtmlOutput(html);
SpreadsheetApp.getUi().showSidebar(userInterface);
}

指示

  1. 运行makeSidebar。它将创建一个侧边栏,其中包含一个标记为"下一步"的按钮。您只需要执行此操作一次。 我喜欢使用侧边栏,因为它只需单击一下,而且我不必弄乱下拉菜单。

  2. 按下按钮,它将向右移动一张纸并选择与您当前活动范围相同的范围。 当它到达末尾时,它将再次绕到开头,并选择相同的范围。

如果您已经有一个侧边栏,请将此 html 添加到 createHtmlOutput 字符串'<input type="button" value="next" onClick="google.script.run.nextSheetSameRange()" />'

最新更新