ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 名课 - Power BI数据分析与可视化实战 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南

【急】Excel中先判断时间,再两个时间相减的公式怎么编

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-6-1 21:58 | 显示全部楼层
あ冰蓝翡翠あ 发表于 2012-6-1 21:50
谢谢大侠,这样修改可以解决问题了。

再请大侠帮个忙,帮我看看我下面的公式存在什么问题,为什么显示 ...

那你有这个公式的文件传上来吧

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-6-1 22:45 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
熊小华 发表于 2012-6-1 21:58
那你有这个公式的文件传上来吧

ABCDEFGHIJKL
105:48:26
11:03:17
11:55:08
17:07:42
   
0,G2-F2,""),IF(E2-"17:15:00">0,E2-"17:00:00",""),IF(D2-"21:15:00">0,D2-"21:00:00",""))>0,SUM(IF(COUNTA(G2)>0,G2-F2,""),IF(E2-"17:15:00">0,E2-"17:00:00",""),IF(D2-"21:15:00">0,D2-"21:00:00","")),"")' x:err="#VALUE!">#VALUE!
0,SUM(K2,L2,M2),"")'> 0,G2-F2,"")'> 0,E2-"17:00:00","")'> 0,D2-"21:00:00","")'> 
206:04:19
11:04:27
11:40:49
17:15:43
   
0,G3-F3,""),IF(E3-"17:15:00">0,E3-"17:00:00",""),IF(D3-"21:15:00">0,D3-"21:00:00",""))>0,SUM(IF(COUNTA(G3)>0,G3-F3,""),IF(E3-"17:15:00">0,E3-"17:00:00",""),IF(D3-"21:15:00">0,D3-"21:00:00","")),"")' x:err="#VALUE!">#VALUE!
0,SUM(K3,L3,M3),"")'>0:15:43
0,G3-F3,"")'> 
0,E3-"17:00:00","")'>0:15:43
0,D3-"21:00:00","")'> 
305:54:38
11:36:56
12:04:56
17:14:02
17:38:14
21:38:47
 
0,G4-F4,""),IF(E4-"17:15:00">0,E4-"17:00:00",""),IF(D4-"21:15:00">0,D4-"21:00:00",""))>0,SUM(IF(COUNTA(G4)>0,G4-F4,""),IF(E4-"17:15:00">0,E4-"17:00:00",""),IF(D4-"21:15:00">0,D4-"21:00:00","")),"")' x:err="#VALUE!">#VALUE!
0,SUM(K4,L4,M4),"")'>4:00:33
0,G4-F4,"")'>4:00:33
0,E4-"17:00:00","")'> 0,D4-"21:00:00","")'> 
406:02:11
11:05:07
11:54:39
17:03:15
17:51:26
21:23:21
 
0,G5-F5,""),IF(E5-"17:15:00">0,E5-"17:00:00",""),IF(D5-"21:15:00">0,D5-"21:00:00",""))>0,SUM(IF(COUNTA(G5)>0,G5-F5,""),IF(E5-"17:15:00">0,E5-"17:00:00",""),IF(D5-"21:15:00">0,D5-"21:00:00","")),"")' x:err="#VALUE!">#VALUE!
0,SUM(K5,L5,M5),"")'>3:31:55
0,G5-F5,"")'>3:31:55
0,E5-"17:00:00","")'> 0,D5-"21:00:00","")'> 
505:51:30
11:01:19
11:49:37
17:18:46
17:43:04
21:05:13
 
0,G6-F6,""),IF(E6-"17:15:00">0,E6-"17:00:00",""),IF(D6-"21:15:00">0,D6-"21:00:00",""))>0,SUM(IF(COUNTA(G6)>0,G6-F6,""),IF(E6-"17:15:00">0,E6-"17:00:00",""),IF(D6-"21:15:00">0,D6-"21:00:00","")),"")' x:err="#VALUE!">#VALUE!
0,SUM(K6,L6,M6),"")'>3:40:55
0,G6-F6,"")'>3:22:09
0,E6-"17:00:00","")'>0:18:46
0,D6-"21:00:00","")'> 

J、K、L三列是IF公式结果,I是J、K、L三列求和,然后我想不通过J、K、L三列,直接把计算的结果显示在H列。
我就在H2编入公式=IF(SUM(IF(COUNTA(G2)>0,G2-F2,""),IF(E2-"17:15:00">0,E2-"17:00:00",""),IF(D2-"21:15:00">0,D2-"21:00:00",""))>0,SUM(IF(COUNTA(G2)>0,G2-F2,""),IF(E2-"17:15:00">0,E2-"17:00:00",""),IF(D2-"21:15:00">0,D2-"21:00:00","")),"")
理论上来讲,H列应该跟I列显示结果是一模一样的,但实际却显示如上面的表格。

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-6-1 22:49 | 显示全部楼层
Book1.rar (2.02 KB, 下载次数: 8)
J、K、L三列是IF公式结果,I是J、K、L三列求和,然后我想不通过J、K、L三列,直接把计算的结果显示在H列。
我就在H2编入公式=IF(SUM(IF(COUNTA(G2)>0,G2-F2,""),IF(E2-"17:15:00">0,E2-"17:00:00",""),IF(D2-"21:15:00">0,D2-"21:00:00",""))>0,SUM(IF(COUNTA(G2)>0,G2-F2,""),IF(E2-"17:15:00">0,E2-"17:00:00",""),IF(D2-"21:15:00">0,D2-"21:00:00","")),"")
理论上来讲,H列应该跟I列显示结果是一模一样的,但实际却显示如上面的表格。

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-6-1 22:54 | 显示全部楼层
{:soso_e110:}12楼操作失误,请跳到13楼。

TA的精华主题

TA的得分主题

发表于 2012-6-1 23:12 | 显示全部楼层
あ冰蓝翡翠あ 发表于 2012-6-1 22:54
12楼操作失误,请跳到13楼。

看你这公式费解,你直接说你的问题,我重新写公式

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-6-1 23:57 | 显示全部楼层
熊小华 发表于 2012-6-1 23:12
看你这公式费解,你直接说你的问题,我重新写公式



如果F不为空,则J=F-E,否则不显示。
如果D的时间大于17:15:00,则K=D-17:00:00,否则不显示。
如果B的时间大于11:15:00,则L=B-11:00:00,否则不显示。
I=J+K+L,如果I为0则不显示。
上面计算出的I是我需要的结果。
但是我在打印文件时,只需要打印A-F还有I列的结果,J、K、L三列我不需要打印。
所以我想在H直接编写一个公式,这个公式的结果跟I是一样的,但是又不需要通过J、K、L三列进行中间转换计算。
请大侠帮帮忙。
ABCDEFGHIJKL
105:48:26
11:03:17
11:55:08
17:07:42
        
206:04:19
11:04:27
11:40:49
17:15:43
        
305:54:38
11:36:56
12:04:56
17:14:02
17:38:14
21:38:47
      
406:02:11
11:05:07
11:54:39
17:03:15
17:51:26
21:23:21
      
505:51:30
11:01:19
11:49:37
17:18:46
17:43:04
21:05:13
      

xls.jpg

TA的精华主题

TA的得分主题

发表于 2012-6-2 01:22 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
あ冰蓝翡翠あ 发表于 2012-6-1 23:57
如果F不为空,则J=F-E,否则不显示。
如果D的时间大于17:15:00,则K=D-17:00:00,否则不显示。
如果 ...

描述的条件矛盾。第一句

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-6-2 10:27 | 显示全部楼层
熊小华 发表于 2012-6-2 01:22
描述的条件矛盾。第一句

“如果F不为空,则J=F-E,否则不显示。”
这一条件是指:
如果F有时间数字,就执行F-E,结果显示在J。
如果F是空白的,就不执行减法,直接在J显示空白。
这样描述的条件应该没有矛盾啊?
请大侠指点。

TA的精华主题

TA的得分主题

发表于 2012-6-2 14:05 | 显示全部楼层
看附件,还是有问题

EH(大熊)-2012.06.02-Book1.rar

11.48 KB, 下载次数: 6

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-6-2 16:00 | 显示全部楼层
熊小华 发表于 2012-6-2 14:05
看附件,还是有问题

{:soso_e106:}我记错前面的条件判断了,在公式中把判断条件11点写成21点了。
=TEXT(IF(F1<>"",F1-E1,0)+(D1-"17:15:00">0)*(D1-"17:00:00")+(B1-"11:15:00">0)*(B1-"11:00:00"),"h:m:s;;")
这样编写的公式比我的简洁明了多了。
请大侠帮我解下疑惑:
IF条件函数判断中,IF(logical_test,value_if_true,value_if_false)
logical_test条件满足为真,相当于“1”。
logical_test条件不满足为假,相当于“0”。
我的意思对吗?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-12-25 07:54 , Processed in 0.027886 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表