=60+IF(TEXT(A1,"@")<="2'40",40,IF(TEXT(A1,"@")>="6",-60,(240-IF(ISNUMBER(FIND("'",A1)),LEFT(A1,FIND("'",A1)-1)*60+RIGHT(A1,LEN(A1)-FIND("'",A1)),A1*60))*0.5))
先要知道你的数据是时间格式(如00:04:05)还是文本格式(如4分01秒),才能写出准确公式。
在excel里一天的数值是1,1小时就是1/24 按这个计算1秒钟就是1/24/60/60
再按照你的时间格式进行判断
大体思路就是if(实际值<4分钟值,不及格,(实际值-4分钟值)*0.5+60)
如果有上限限制就外嵌一个min(计算值,100)
不知下面是否适合你用,
先把时间转化成秒,以240为界,大于240,差多少就用60减多少,小于等于240,就用60+0.5*差值
若用VBA来做应该很简单,若直接放在单元格内可以这样
A1放置时间,分数为0-100
=IF(A1>240,IF((300-A1)<0,0,(300-A1)),IF((180-0.5*A1)>100,100,(180-0.5*A1)))
这个可以做,但你的得分标准没说清楚,如果满分100分,那多长时间是100分,比如3分30秒是100分,那3分29是多少,3分28是多少,说清楚我可以给你做做