首页 > 解决方案 > Google 表格:在 Arrayformula 函数中重复 INDEX 函数

问题描述

我试图在 ArrayFormula 函数中重复 Index 函数,但有两个问题:

  1. 总和已完成,但我还有其他结果,我不知道它们来自哪里(从 P 列开始)

  2. 我不知道如何自动获取 A 列中列出的所有工作表。例如,如果我添加一个新工作表 - 假设 A4 中的 Client <200 与工作表和所有数据 - 我需要添加ArrayFomula 中的 INDEX 部分

    =Arrayformula(INDEX(INDIRECT($A$1&"!$B"&match(C4,INDIRECT($A$1&"!A:A"),0)&":"&match(C4,INDIRECT($A$1& "!A:A"),0)))+INDEX(INDIRECT($A$2&"!$B"&match(C4,INDIRECT($A$2&"!A:A"),0)&":" &match(C4,INDIRECT($A$2&"!A:A"),0)))+INDEX(INDIRECT($A$3&"!$B"&match(C4,INDIRECT($A$3&"!A: A"),0)&":"&match(C4,INDIRECT($A$3&"!A:A"),0))))

可以在此处查看电子表格: https ://docs.google.com/spreadsheets/d/1yBC4oQuhKOkIkf3lQZGBKcZQ3YjU_5N6MCIJZzdt0O4/edit?usp=sharing

谢谢!

标签: google-sheets

解决方案


尝试:

=ARRAYFORMULA(INDIRECT(A1&"!B2:M4")+
              INDIRECT(A2&"!B2:M4")+
              INDIRECT(A3&"!B2:M4"))

在此处输入图像描述


要计算丢失/未来的工作表,您可以执行以下操作:

=ARRAYFORMULA(INDIRECT(A1&"!B2:M4")+
              INDIRECT(A2&"!B2:M4")+
              INDIRECT(A3&"!B2:M4")+
              IF(A4<>"", INDIRECT(A4&"!B2:M4"), SPLIT(REPT("01", 12), 1))+
              IF(A5<>"", INDIRECT(A5&"!B2:M4"), SPLIT(REPT("01", 12), 1)))

在此处输入图像描述


推荐阅读