Excel:查找唯一 ID 的最终值和倒数第二个值

Excel:查找唯一 ID 的最终值和倒数第二个值

我需要能够计算条件 (UID) 的最新 (最终) 日期和次最新 (倒数第二) 日期之间的差值。我可以使用获取最新日期,MAXIFS但需要一些帮助来获取倒数第二日期。

例如,蓝色 = 来源,橙色 = 预期结果:

示例图像

(抱歉,没有资格直接发布图片)

答案1

日期和时间以数字表示,其中整数部分表示日期,小数点后的部分表示时间。有关 Excel 中的日期的更多信息。

因此,基本上您要寻找的是最大数和第二大数。使用公式LARGE

Ultimate=LARGE(Table1[Date]*(Table1[UID]=[@UID]),1)
Penultimate=LARGE(Table1[Date]*(Table1[UID]=[@UID]),2)

如果您使用以下其中之一:适用于 Microsoft 365 的 Excel 适用于 Microsoft 365 for Mac 的 Excel 适用于网页版 Excel 适用于 iPad 的 Excel Excel Web 应用 适用于 iPhone 的 Excel 适用于 Android 平板电脑的 Excel 适用于 Android 手机的 Excel。 或更新版本。

只需使用这些公式。 较新的 Excel 版本

在旧版 Excel 中:您必须输入数组公式

必须用 进行确认CTRL+SHIFT+ENTER。如果操作正确,公式将被包装在 中{}。这意味着公式是作为数组公式计算的。 较早的 Excel 版本

怎么运行的:

  1. (Table1[UID]=[@UID])返回与Table1[UID]列大小相同的 TRUE 或 FALSE 矩阵。

  2. Table1[Date]*(Table1[UID]=[@UID])日期列乘以1.Excel 的结果公式,以这种方式处理布尔值TRUE = 1FALSE = 0此步骤的结果是带有数字值的矩阵,其中 UID 不同的所有行[@UID]都是0

  3. 最后,LARGE 公式从上一步的结果中找出第 n 个最大值。您将得到代表日期的数字(将其格式化为日期)

有几点需要注意:

  • 当 UID 没有最终/倒数第二时间时,您将获得0。使用 IF 函数来处理此异常。
  • 如果表 1 中一个 UID 有两个相同的最近日期,则倒数第二个时间将与最后一个时间相同(第一大值和第二大值相同)

相关内容