Excel:用于查找日期之间最常见文本的公式

时间:2015-07-09 02:59:26

标签: excel function text formula

我有一个电子表格,其中数据按多个类别排列:日期,位置和ID代码。我需要找出一种方法来显示特定位置的两个日期之间最常见的ID。

我之前尝试过以下建议,这就是我所拥有的:

=INDEX(CodeRange,MATCH(MAX(FREQUENCY(IF((DateRange>=A4)*(DateRange<A5),COUNTIFS(CodeRange,">"&CodeRange,AssetRange,$B$1),""),COUNTIFS(CodeRange,">"&CodeRange,AssetRange,$B$1))),FREQUENCY(IF((DateRange>=A4)*(DateRange<A5),COUNTIFS(CodeRange,">"&CodeRange,AssetRange,$B$1),""),COUNTIFS(CodeRange,">"&CodeRange,AssetRange,$B$1)),0))

名称:CodeRange是ID列,DateRange是日期列,AssetRange是位置列。 A4和A5包含两个日期,$ B $ 1指的是包含位置名称的单元格

但是,当我在较小的数据样本上测试时,此公式会返回错误的ID。我已经确保进入control + shift + enter并且我不熟悉频率功能,所以我怀疑这就是问题所在。

请以任何方式告知,谢谢。

1 个答案:

答案 0 :(得分:1)

您缺少样本数据迫使我假设ID代码是一个数值。如果这是正确的,那么MODE functionMODE.SNGL functionMODE.MULT function应该是合适的。类似于您应用于FREQUENCY function的日期条件的数组处理将提供过时的标准。

MODE.SNGL MODE.MULT dated array formula

H15中的数组公式使用MODE.SNGL。

=MODE.SNGL(IF(A2:A25>=F15, IF(A2:A25<=G15, C2:C25)))

需要使用 Ctrl + Shift + Enter↵来最终确定数组公式。 尝试并减少对更接近表示实际数据范围的范围的全列引用。数组公式以对数方式计算计算周期,因此最好将参考范围缩小到最小值。