在 Excel 中使用 MAX() 针对使用多个条件的日期列表进行计算

在 Excel 中使用 MAX() 针对使用多个条件的日期列表进行计算

我搜索了又搜索,并尝试了每一个答案,但似乎没有一个适合我的情况。

使用 Excel 2003。

我有一张表,其中包含 [DATE]、[SITE]、[INCIDENT] 列。

我将使用类似于 SQL 的语言进行解释,因为它简洁明了。我需要对该表中的数据运行以下 SELECT 语句

从表 1 中选择 [日期],其中 [站点] = "站点 1" 且 [事件] = "死亡"

从该列表(多个值)中,我需要显示最新的 [DATE] 值,即死亡发生的最后日期。

我尝试过以下公式:

{=MAX(IF('Spreadsheet1'!D3:D1000="Death", IF('Spreadsheet1'!E3:E1000="Site1", 'Spreadsheet1'!A3:A1000, 0), 0))}

但这似乎不能正常工作。

我们绝对欢迎任何帮助。

答案1

尝试

=MAX(A3:A1000 * (D3:D1000="Death") * (E3:E1000="Site1"))

这不会将WHERE子句视为条件,而是将其视为要最大化的表达式的一部分。TRUE 为 1,FALSE 为 0,因此价值×布尔值1×布尔值2价值如果两个布尔值都为 TRUE,则为 0。

当然,这是一个数组公式;但我知道你已经理解这些了。

答案2

确保您的工作表名称与公式中使用的名称匹配(我认为是匹配的),并且您使用 Control-Shift-Enter 组合键输入公式,因为它是一个数组公式。这个公式对我来说很管用。

相关内容