【发布时间】:2020-07-09 18:53:50
【问题描述】:
这个问题是关于在 Google 电子表格中重复范围。这是我目前使用的公式:
=ARRAYFORMULA(ARRAYFORMULA(SUM(COUNTIFS(SPLIT(REPT("Attendence!B:B;", 2), ";"), {"Name1", "Name2", "Name3"}, Attendence!O:P, "=P"))))
这是我需要的一个例子:
=ARRAYFORMULA(ARRAYFORMULA(SUM(COUNTIFS({Attendence!B:B, Attendence!B:B, Attendence!B:B, Attendence!B:B}, {"Name1", "Name2", "Name3"}, Attendence!O:R, "=P"))))
基本上,Attendence!B:B 需要在{ } 内重复与Attendence!O:R 中的列相同的次数。问题是,第二个公式可以工作,除了公式需要访问列C:JY,这意味着我必须重复Attendence!B:B 的次数是荒谬的。
所以我尝试使用这个:SPLIT(REPT("Attendence!B:B;", 2), ";") 并将2 替换为列数,但它一直告诉我们两个参数的长度不相等。
简化表: https://docs.google.com/spreadsheets/d/1PFEz3wz5HOP1cD6HBE-N00yoM1reLwlOpo905cMRW8k/edit?usp=sharing
这个问题和这个很相似:How to make a range repeat n-times in Google SpreadSheet
但是,尽管我尝试实施其中提到的解决方案,但它对我不起作用。
【问题讨论】:
-
几个问题。您能否分享一个样本表,其中显示了您拥有什么以及您想要实现的目标?您的示例中没有
C:JY范围,因此很难说出如何处理它。为什么你需要重复列Attendence!B:B?只是为了与{Name1, ...}范围比较?这个{Name1, ...}范围来自哪里? -
现在问题中分享了
-
好的,尝试将(在您的工作表中完成)
REPT("Attendence!B:B;", 2)更改为REPT(Attendence!B:B & ";", 2) -
您需要统计总出席人数还是要获取每个姓名的出席人数列?
-
工作表是私有的
标签: google-sheets google-sheets-formula array-formulas