为什么我写的EXCEL函数显示错误

2025-04-03 20:48:13
推荐回答(4个)
回答(1):

你的问题在哪里?我们先弄清楚。

1. 对于EXCEL来说,它能使用函数对当前单元格进行赋值等操作,但是并不能实现“当满足某个条件时,对其他单元格赋值”。简单来说,你的公式写在那个单元格里面,就只能对这个单元格做赋值,不能对其他单元格赋值。

2. 你的条件比较乱,对于K2来说,如果E2<8:31的话,K2输入1,那如果11:59>E2>=8:31的话,K2又输入什么呢?类比L2,M2两个单元格,有些时间区间你并没有给出输入结果,我就默认你是想不显示。

那么要实现你的要求,excel公式应该怎么写呢?我给你一个方案你可以考虑下。

1. 在其他单元格先写入你要判断的几个时间,这几个单元格的格式按照如下图。为什么要这样做?在公式做判断的时候,直接引用来做比较,不用把时间再用timevalue函数做二次处理了再比较,就很方便。恩,真香!

2. 你要在K2,L2,M2三个单元格实现条件判断后显示,那么就分别在三个单元格输入公式:

K2=IF(E2

L2=IF(AND(E2>A10,E2

M2=IF(AND(E2A11),1,IF(E2>=A12,"错误",""))

3. 然后就实现了你要的功能,看下效果(我把三个单元格填了颜色方便观察)。

3.1 比如你的条件一:判断E2的时间,小于8:31,则在K2输出1。

3.2 条件二:如不满足条件一的话,当E2大于11:59小于14:01时,L2输入1.

3.3 条件三:如不满足条件二,则当E2小于17:29,则在M2输出1,否则输出“错误”。

你这几个条件确实还没有设置清楚,你再理一理当不满足条件的另外一些时间,对应的单元格应该输入什么,我如上的例子是给你输入空值,就是没输出,你看下是否满足了你的要求。

回答(2):

这个公式写到哪了?需要在哪输出,就应该写到哪。公式里不能有把1赋值给k2这种操作吧。应该在k2里写,e2满足什么就输出什么,否则输出什么。。。

回答(3):

你可以使用“公式”中的“公式求值”一步一步进行计算,检查到底哪一步计算出错的。
你这个公式挺复杂,我只能简单看了一下,TIMEVALUE(TEXT(E2,"h:m")

回答(4):

不能够这样写的。
在K2写公式:=IF(TIMEVALUE(TEXT(E2,"h:m"))在L2写公式:=IF(AND(TIMEVALUE(TEXT(E2,"h:m"))>TIMEVALUE("11:59"),TIMEVALUE(TEXT(E2,"h:m"))在M2写公式:=IF(TIMEVALUE(TEXT(E2,"h:m"))>TIMEVALUE("14:01"),IF(TIMEVALUE(TEXT(E2,"h:m"))