我尝试使用SUMIFS函数对一个表中落在另一个表中指定的日期范围内的所有条目求和。我无法让比较运算符(">=“或"<")起作用。我做的每一个变化都会导致不正确的和0。我已经在网上找过了,但没有找到答案。
下面是我尝试过的几个变体:
变体1:
=SUMIFS(tblHoldings[Amount],tblHoldings[Dates],">=[@Dates]",tblHoldings[Dates],"<CurrentHoldings!C4",tblHoldings[Investment],tblCurrentHoldings[[#Headers],[LargeStock]])
变体2:
=SUMIFS(tblHoldings[Amount],tblHoldings[Dates],">="&[@Dates],tblHoldings[Dates],"<"&CurrentHoldings!C4,tblHoldings[Investment],tblCurrentHoldings[[#Headers],[LargeStock]])
其他变体导致了通用的“这个公式有问题”的错误消息。如果我删除比较运算符,公式将返回一个sum,因此我知道引用是正确的。我只需要按日期过滤这些引用。当我计算Variation 2公式时,">="&tblHoldingsDates和"<"&tblHoldingsDates引用计算为#Value错误。这看起来应该是一个简单的公式。我忽略了什么?
谢谢!
下面是带有公式的表的屏幕截图(公式返回0):screenshot
以下是与范围表(公式返回正确答案)相同工作表上的表的屏幕截图:screenshot
下面是文件本身:https://1drv.ms/x/s!ArArDJ7WmD62grkh5Crfi0m3k_m8GQ?e=yb888R
发布于 2019-06-25 08:58:22
如果它在一个工作表上工作,而不是在另一个工作表上工作,听起来你的引用可能会混淆。这里有一个公式的例子,它完美地工作在SUMIFS中,在多张表上有多个表。在本例中,参数是对结构化表格的引用,但最后一个例外,它是一个静态文本字符串。
=SUMIFS(t_Claims[f_PaidClaims],t_Claims[f_Month],[@Month],t_Claims[Data Category],"Medical"))
这是另一个例子,但在这个场景中,我用另一个工作表上的单元格值替换了最后一个条件。注意工作表名称两边的单引号。“表名”我在你的公式里没看到这些。您还可以看到,通过添加对另一个工作表的引用,对同一个表(@[Month]
)中其他列的引用已经被添加的表名以及t_DataSummary_ByMonth[@Month]
完全限定。
=SUMIFS(t_DataSummary_ByMonth[Fixed Costs],t_DataSummary_ByMonth[Month],">="&t_DataSummary_ByMonth[@Month],t_DataSummary_ByMonth[Month],"<"&'Fees - Update Annually'!E269)
我建议突出显示公式的这一部分,并重新映射它:
CurrentHoldings!C4
如果它应该是绝对单元格引用,则添加美元符号:
'CurrentHoldings'!$C$4
如果要引用另一个表中的另一个单元格值,则还应完全限定与公式位于同一表中的列引用,特别是在两个表中的列标题相同的情况下。
https://stackoverflow.com/questions/56744630
复制相似问题