我在一个 LibreOffice Calc 文档中有两张工作表:
工作表1:
| Key | Amount |
|-----|---------|
| ABC | 1 |
| DEF | 2 |
| GHI | 3 |
工作表2:
| Keys |
|-------|
| ABC |
| XYZ |
| JKL |
| GHI |
现在我想在 Sheet1 的行中添加金额,但是仅有的其中键包含在 Sheet2 中的任意位置。对于上述示例,总和将是4
(ABC
带有金额的键1
和GHI
带有金额的键3
)。
我一直在使用“高级筛选”来解决这个问题,SUBTOTAL
但我真的很想要一个解决方案,让我在表格更改时不必重新应用筛选。任何帮助都将不胜感激!
答案1
一种方法是将 SUMPRODUCT 与 COUNTIF 结合起来。我复制了您的示例。
E2 中的公式:
=SUMPRODUCT(COUNTIF(Sheet2!$A$2:$A$5,"="&$A$2:$A$4)*$B$2:$B$4)
SUMPRODUCT 对 Sheet1 上每一行的 COUNTIF 结果乘以 B 列中的金额进行数组样式计算。假设 Sheet2 上的键不包含重复项,则计数结果为1
Sheet2 是否包含该键0
。
我建议使用明确的范围,而不是简单的列引用(即 A:A)。您可以用空行填充明确的范围,以允许可能需要的任何潜在扩展,并且公式仍然有效。但是,Calc 需要很长时间才能评估整个列。