ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 657|回复: 8

[求助] 各位老师,这题咋解

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-1-8 14:58 | 显示全部楼层 |阅读模式
本帖最后由 安然祥和 于 2022-1-8 15:02 编辑

请问各位老师,这题怎样解?


注:UTC为国际标准时间,美西时间为西8区,夏令时间每年从 3 月的第二个星期日开始,到 11 月的第一个星期日结束,时间更改发生在当地时间凌晨 2:00

时区转换 需考虑夏令时(安然).zip

10.74 KB, 下载次数: 14

TA的精华主题

TA的得分主题

发表于 2022-1-8 18:19 | 显示全部楼层
本帖最后由 swyrlbq 于 2022-1-8 19:00 编辑

可能搞复杂了
=MID(A2,1,10)+MID(A2,12,8)-7/24-1/24*(MEDIAN(--MID(A2,1,10),--(MID(A2,1,5)&{3,11}&"-"&MOD(SMALL(IF(WEEKDAY(DATE(LEFT(A2,4),{3,11},1)+ROW($1:$14)-1,1)=1,{100,200}+ROW($1:$14)),{2,3}),100)))=--MID(A2,1,10))

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-1-8 18:47 | 显示全部楼层
本帖最后由 安然祥和 于 2022-1-8 19:05 编辑
swyrlbq 发表于 2022-1-8 18:19
可能搞复杂了
=MID(A3,1,10)+MID(A3,12,8)-8/24-1/24*(MEDIAN(--MID(A3,1,10),--(MID(A3,1,5)&{3,11}&"-"& ...

   老师:有个问题附件里不仅有2021年的时间转换还有2020年的时间转换啊。
如: image.png ,这个计算结算就有问题

TA的精华主题

TA的得分主题

发表于 2022-1-8 19:02 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 swyrlbq 于 2022-1-8 19:06 编辑

附件已更新,请检验。有个问题不清楚,西八区与标准时间差8小时,还是7小时,不懂。
如果是8小时,公式中的7/24,就应该是8/24

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-1-8 19:10 | 显示全部楼层
本帖最后由 安然祥和 于 2022-1-8 19:56 编辑
swyrlbq 发表于 2022-1-8 19:02
附件已更新,请检验。有个问题不清楚,西八区与标准时间差8小时,还是7小时,不懂。
如果是8小时,公式中 ...

应该是8小时。我是用最笨的办法:计算任何年份中3月第二个星期日的日期,又计算任何年份中11月第一个星期日的日期,若为夏令时则加一小时。所以公式很长很长。不象老师的简洁。

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-1-8 19:18 | 显示全部楼层
swyrlbq 发表于 2022-1-8 19:02
附件已更新,请检验。有个问题不清楚,西八区与标准时间差8小时,还是7小时,不懂。
如果是8小时,公式中 ...

老师:确实还有点问题,
如:2020-03-09T10:30:23+00:00,这应是第二个星期日还多一天,也就是星期一,应为夏令时。而你的结果为:2020-3-9  02:30:23 AM

TA的精华主题

TA的得分主题

发表于 2022-1-8 20:20 | 显示全部楼层
老朋友,好久不见了 ~~~~~

=LEFT(REPLACE(A2,11,1," "),19)+((MATCH(--LEFT(REPLACE(A2,11,1," "),19),FLOOR(DATE(LEFT(A2,4),{1;3;11},0),7)+{0;9;1}+7/24)=2)-8)/24

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-1-9 13:30 | 显示全部楼层
本帖最后由 安然祥和 于 2022-1-9 14:23 编辑
丢丢表格 发表于 2022-1-8 20:20
老朋友,好久不见了 ~~~~~

=LEFT(REPLACE(A2,11,1," "),19)+((MATCH(--LEFT(REPLACE(A2,11,1," "),19),F ...

大师就是大师,出手不凡,简洁准确。谢谢!能否就此部分解读一下:(MATCH(--LEFT(REPLACE(A2,11,1," "),19),FLOOR(DATE(LEFT(A2,4),{1;3;11},0),7)+{0;9;1}+7/24)=2

TA的精华主题

TA的得分主题

发表于 2022-1-9 14:58 | 显示全部楼层
安然祥和 发表于 2022-1-9 13:30
大师就是大师,出手不凡,简洁准确。谢谢!能否就此部分解读一下:(MATCH(--LEFT(REPLACE(A2,11,1," "),1 ...

MATCH(--LEFT(REPLACE(A2,11,1," "),19),FLOOR(DATE(LEFT(A2,4),{1;3;11},0),7)+{0;9;1}+7/24)


1、--LEFT(REPLACE(A2,11,1," "),19) 这个是当前的时点


2、FLOOR(DATE(LEFT(A2,4),{1;3;11},0),7)+{0;9;1}+7/24 、这是组成 三个时间点:


     第一个是 小于当年的时间点
     第二个是 该年的 3月的时间点
     第三个是 该年的 11月的时间点。





评分

2

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

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

GMT+8, 2024-4-24 19:06 , Processed in 0.048819 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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