ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 不规则日期转规则日期

[复制链接]

TA的精华主题

TA的得分主题

发表于 2025-11-18 13:36 | 显示全部楼层
fgq5910 发表于 2025-11-18 08:52
使用这个最直接的方法:
对于"2025/1/12-16",
在B2输入:=DATE(2025,1,12)+SEQUENCE(5,1,0,1)

你这等于手工做   公式要的效果就是拖拉或者一次出结果

TA的精华主题

TA的得分主题

 楼主| 发表于 2025-11-18 13:38 | 显示全部楼层
没想到这个问题还有点儿难度,如果只有这两行那也不用费事了。目前就8楼处理的最好

TA的精华主题

TA的得分主题

发表于 2025-11-18 14:14 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
=REDUCE("补全日期",A2:A3,LAMBDA(a,b,VSTACK(a,LET(arr,TEXTSPLIT(b,"-"),z,TAKE(arr,,1),y,TAKE(arr,,-1),a,IF(REGEXP(y,"[/]",1),TEXT(z,"yyyy")&"/"&y,TEXT(z,"yyyy/m")&"/"&y),c,SEQUENCE(a-z+1,,--z),DROP(REDUCE("",c,LAMBDA(x,y,VSTACK(x,y))),1)))))

TA的精华主题

TA的得分主题

发表于 2025-11-18 20:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
好问题,学习一下解答,平时也可以用上

TA的精华主题

TA的得分主题

发表于 2025-11-19 14:50 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. =REDUCE(C1,A2:A3,LAMBDA(x,y,VSTACK(x,TEXT(LET(s,--TEXTSPLIT(y,"-"),TAKE(s,,1)+SEQUENCE(TEXT(NPV(-2,s),"0;!"&SUM(TAKE(s,,-1)-DAY(TAKE(s,,1))))+1,,0)),"e-m-d"))))
复制代码

image.jpg

TA的精华主题

TA的得分主题

发表于 2025-11-19 16:18 | 显示全部楼层
B2=TEXT(SUM(TRIM(MID(SUBSTITUTE(A2,"-",REPT(" ",19)),{1,20},19))*{-1,1}),"[<0]"&MID(A2,FIND("-",A2)+1,9)-DAY(LEFT(A2,FIND("-",A2)-1))&";0")+1

D2{=IFERROR(TRIM(LEFT(SUBSTITUTE(INDEX(A:A,SMALL(IF(B$2:B$5>=COLUMN(A:Z),ROW($2:$5)),ROW(A1))),"-",REPT(" ",19)),19))+ROW(A1)-LOOKUP(ROW(A1)-1,SUBTOTAL(9,OFFSET(B$1,,,ROW($1:$4))))-1,"")
14556.png

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2025-11-19 17:08 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
hcm19522 发表于 2025-11-19 16:18
B2=TEXT(SUM(TRIM(MID(SUBSTITUTE(A2,"-",REPT(" ",19)),{1,20},19))*{-1,1}),"[

这纯粹是为了练习 实际工作中 不能搞这样的填写方式 最好一列起始日期 一列结束日期 并且格式要统一 后期做什麽都好搞

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2025-11-19 18:42 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
cjc209 发表于 2025-11-19 17:08
这纯粹是为了练习 实际工作中 不能搞这样的填写方式 最好一列起始日期 一列结束日期 并且格式要统一 后期 ...

主要是应付领导爱好和一些特殊场景
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-12-14 02:28 , Processed in 0.028223 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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