发布网友 发布时间:2022-04-25 05:59
共3个回答
热心网友 时间:2023-11-01 04:55
=INDEX({5,3,5,0,1,8,0,2},N(IF(1,SMALL(IF({5,3,5,0,1,8,0,2}<>0,TRANSPOSE(ROW(INDIRECT("1:"&COLUMNS({5,3,5,0,1,8,0,2})))),""),ROW(INDIRECT("1:"&SUM(--({5,3,5,0,1,8,0,2}<>0)))))))),按CTRL+SHIFT+ENTER结束。
公式中假设你的原始数组中的个数是未知的,所以公式麻烦了一点。追问你的公式按CTRL+SHIFT+ENTER后提示错误
追答
那是你的EXCEL是2003的,如果是EXCEL是2007以上的不会出错,公式已经超过7层了。
公式改了一下,这个2003的可以用。=INDEX({5,3,5,0,1,8,0,2},N(IF(1,SMALL(IF({5,3,5,0,1,8,0,2},COLUMN(INDIRECT("R1C1:R1c"&COUNT({5,3,5,0,1,8,0,2}),)),""),COLUMN(INDIRECT("R1C1:R1c"&COUNT(0/{5,3,5,0,1,8,0,2}),)))))),按CTRL+SHIFT+ENTER结束。
热心网友 时间:2023-11-01 04:55
追问其实这个问题的原型是获取最早和最晚的打卡时间!
如果直接用MIN()和MAX()函数,因为复制进来的单元格格式问题,结果会出现错误(即使没有错,有的单元格必须要双击后运算结果才正确。单元格格式修改后即使按F9刷新依然没用)
因为打卡记录很多,我不可能一个一个的去弄,所以你这个办法不现实!
热心网友 时间:2023-11-01 04:56
不懂你整个公式的目的,所以不好回答,你试一下这样
=SUM(IF(--({5,3,5,0,1,8,0,2}<>0),{5,3,5,0,1,8,0,2}))