首页 > 解决方案 > 删除需要比较的以秒为单位的时间重复?

问题描述

我有一个谜题让我很忙,而且我的 Excel 知识还没有达到高级水平,所以我有点卡住了。

这是交易:这是关于错误报告的。实验室仪器有时会弹出与将要扫描的样本相关的错误。每个错误都会弹出 3 或 4 次(这完全是随机的)。识别相同错误的唯一方法是错误发生时间的确切时间戳。这里的情况变得棘手。正如我所说,同样的错误出现在“三重”或“四重”中,但时间戳可能不同。

例如,相同的错误将在仪器软件中给出以下确切时间:

12:30:58 的示例错误

12:30:58 的示例错误

12:30:58 的示例错误

12:31:07 的示例错误

使用 excel 的“删除重复项”功能很容易删除相同的 3 个错误,但第 4 个错误完全相同,但时间戳不同,我也想删除它。如果只是 30 或 50 个错误,我可以手动完成,但文件很大,有数千个。

我注意到同一错误之间的最大秒数不超过 15 秒。

我删除重复项的方法是仅显示小时和分钟(上面的示例看起来像 12:30 / 12:30 / 12:30 / 12:31),通常就足够了。

但是,当错误发生在一分钟的最后几秒时,就会出现异常。发生这种情况时,我删除重复项的方法不准确,因为在上面的示例中,相同的错误弹出 4 次,但在最后一分钟发生了变化,因此它不会被删除,并将被注册为额外错误在我的报告中。

微小变化例外的问题:有没有办法将这些错误组合在一起,将它们相互比较并基于这些 15 秒的最大差异,删除所有重复项(包括具有不同时间戳的那个)并只保留一个?这是否涉及任何数组或分组方法?

这是一张示例图片,可让您了解报告的外观。黄色单元格是这些“例外”是微小的增量。Excel中的错误概述

如果有不清楚的地方,请告诉我。

标签: excelduplicatesdatetime-format

解决方案


通常的方法是在数组公式中使用偏移范围。所以在这里你会从它下面的时间中减去一个时间(上一个时间,因为它们是按时间倒序排列的)并将它与 15 秒进行比较:

=FILTER(B2:INDEX(B:B,COUNTA(B:B)),B2:INDEX(B:B,COUNTA(B:B))-B3:INDEX(B:B,COUNTA(B:B)+1)>TIME(0,0,15))

我使用了 Counta 和 Index 来定义使用的范围(假设没有空格)。保留的时间戳是最早的时间戳。

在此处输入图像描述


推荐阅读