Google sheets 添加新选项卡时母版图纸更新
我有一个主工作表,我想在谷歌工作表中合并同一工作簿中其他选项卡的值。其他选项卡的格式都相同;我要拉入主控中的数据在所有选项卡中都位于同一位置。获取现有选项卡数据的公式很简单。我想知道的是:有没有一种方法可以让主选项卡在添加新选项卡时自动更新,以将这些新选项卡包括在数学中?选项卡名称通常是日期,如03/15/21、03/31/21等。在整个工作簿中,我只有一个其他选项卡具有不同的数据,我希望排除这些数据。 不确定这是否可行,但请提前感谢任何试图提供帮助的人 答案 用于创建对所有图纸的值求和的函数 一步一步地Google sheets 添加新选项卡时母版图纸更新,google-sheets,google-sheets-formula,Google Sheets,Google Sheets Formula,我有一个主工作表,我想在谷歌工作表中合并同一工作簿中其他选项卡的值。其他选项卡的格式都相同;我要拉入主控中的数据在所有选项卡中都位于同一位置。获取现有选项卡数据的公式很简单。我想知道的是:有没有一种方法可以让主选项卡在添加新选项卡时自动更新,以将这些新选项卡包括在数学中?选项卡名称通常是日期,如03/15/21、03/31/21等。在整个工作簿中,我只有一个其他选项卡具有不同的数据,我希望排除这些数据。 不确定这是否可行,但请提前感谢任何试图提供帮助的人 答案 用于创建对所有图纸的值求和的函数
- 打开
单击应用程序脚本
,您将看到脚本编辑器。它基于,允许您使用名为的服务创建、访问和修改GoogleSheets文件工具>脚本编辑器
- 编写具有以下功能的函数:
- 输入:要求和的单元格
- 把所有的床单都拿来
- 从第二张表(索引1)开始计算所需单元格的值之和。使用和
- 返回值
- 从电子表格中所需的单元格调用函数。例如,在
中使用E1
=sumSheets(“E1”)
功能表(单元格){
var ss=SpreadsheetApp.getActiveSpreadsheet()
var sheets=ss.getSheets()
var总和=0
对于(var i=1;i我找到了一个解决方法,至少对于那些不想使用脚本的人来说是这样。
我做了一个列,列上日期是01/15、01/31…12/31,格式为纯文本
在相邻的一列中,我放置了一个公式来检查这些工作表中的单元格的值,在我的情况下:=IFERROR(间接(A1&“!AC2”),)A1是我的日期所在,AC2是我要检查的另一个选项卡中的单元格所在。复制该列(arrayformula在此不起作用)。基本上,如果选项卡存在且日期名称位于列A中,则该值将返回,但如果该选项卡尚不存在,则将返回空白
然后,在下一列中,我对这两个选项进行排序和过滤:=排序(filter(A:B,ISNUMBER(B:B)),2,TRUE),它为存在的选项卡提供一个日期列表,并在添加新选项卡时进行更新(同样,每个选项卡上的数据布局相同,这很重要!)
然后,我使用排序/筛选列在主控表上计算。
我意识到这有点复杂,但它不使用脚本就可以工作。我会更新我的样本表,以防这对任何人都有帮助。嗨,我有一个类似的问题。这很困难。我设法将现有的表命名为日期。然后我尝试为同一单元格构建一个由所有表组成的范围(01/01/21!A1,01/02/21!A1…等等)但我失败了,因为间接函数不适用于arrayformula:-(嗨-我尝试过这个,但每当我添加新选项卡或现有选项卡单元格中的数据发生更改时,它都不会更新。我承认我几乎不知道如何在工作表中编写脚本,所以可能我做错了什么?我运行了您放在示例工作表中的代码并授予了权限。我还需要做些什么吗?谢谢。嘿,我没有我知道自定义公式不会自动更新结果。我会调查如何进行更新,但是,我很高兴你解决了你的问题。
function sumSheets(cell){
var ss = SpreadsheetApp.getActiveSpreadsheet()
var sheets = ss.getSheets()
var sum = 0
for (var i=1; i<sheets.length; i++){
sum += sheets[i].getRange(cell).getValue()
}
return sum
}