首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在表格中查找最早的条目

在表格中查找最早的条目
EN

Stack Overflow用户
提问于 2020-04-15 05:00:28
回答 2查看 45关注 0票数 0

考虑下表中的雇员。

这很简单,对吧?开始的时候打卡,午餐的时候打卡,午餐后打卡,离开的时候打卡。但是谁能告诉我这些员工实际上是什么时候开始工作的?那么举个例子,你怎么说Tom在早上6:51而不是下午12:23呢?

为了获得更多的参考,所有条目看起来都是这样的。他们至少有4个条目,(有些人,没有午餐)。

如何编写返回开始时间的公式?

我编辑了该表,并为该日期添加了一个helper列。见下文。

答案:

代码语言:javascript
复制
=AGGREGATE(15,6, $C$2:$C$7/((A11=$A$2:$A$7)*(B11=$B$2:$B$7)),1)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-15 06:47:51

如果工作时间在一天之内,您可以搜索最小的时间。如果午夜以后有夜班,那就有问题了……

代码语言:javascript
复制
=AGGREGATE(15,6,(1/($A$2:$A$5=A2)*(INT(B2)=INT($B$2:$B$5)))*($B$2:$B$5),1)

票数 1
EN

Stack Overflow用户

发布于 2020-04-15 06:45:35

我已经为range E2写下了这个公式:

代码语言:javascript
复制
=IF(AND(A2=A3,TRUNC(B2,0)-TRUNC(B3,0)=0),MIN(B2,B3),IF(AND(IFERROR(TRUNC(B2)-TRUNC(B1)=0,FALSE),E1=MIN(B2,B1)),"",B2))"

由于英语不是我在Excel上的默认语言,我只是手动翻译了它。无论如何,以防万一,下面是将其粘贴到range E2中的VBA代码:

代码语言:javascript
复制
Range("E2").FormulaR1C1 = "=IF(AND(RC[-4]=R[1]C[-4],TRUNC(RC[-3],0)-TRUNC(R[1]C[-3],0)=0),MIN(RC[-3],R[1]C[-3]),IF(AND(IFERROR(TRUNC(RC[-3])-TRUNC(R[-1]C[-3])=0,FALSE),R[-1]C=MIN(RC[-3],R[-1]C[-3])),"""",RC[-3]))"

我尝试过各种配置,它对我很有效。Only point: list必须按名称和打卡时间排序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61217164

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档