我目前有一个谷歌表格电子表格,它使用以下公式从同一工作簿中的另一张表格中提取数据,以设置轮班时间的格式:
=iferror(ARRAYFORMULA(MAP(数据!A1:H99,LAMBDA(x,IF(x="NO SHIFT",x,JOIN(" -"&Char(10)),TEXT(SPLIT(x,"-"), “小时:毫米上午/下午”))))))
作为数据的一部分,我在一个单元格中包含姓名和班次总计(这就是数据来自我的其他来源的方式)。
例如:
姓名 | 次 |
---|---|
名字姓氏24小时/3小时 | 06:00 - 1600 |
名字姓氏22小时/3小时 | 06:00 - 1600 |
名字姓氏20小时/3小时 | 06:00 - 1600 |
等等
我想拆分包含名称和每小时总计的单元格,以便有一个中断(连字符、换行符等,所以它看起来像这样:
姓名 | 次 |
---|---|
名字姓氏 - 24 小时/3 小时 | 06:00 - 1600 |
名字姓氏 - 22 小时/3 小时 | 06:00 - 1600 |
名字姓氏 - 20 小时/3 小时 | 06:00 - 1600 |
等等
有没有一个公式可以做到这一点;我在哪里/如何将其整合到我现有的公式中?
谢谢!
尝试了 TEXT(SPLIT(x,{1,2,3,4,5,6,7,8,9,0}) 的几种变体,但由于它针对数字,因此也影响了轮班时间。
假设表格在
A:B
,你可以使用:
=ARRAYFORMULA({REGEXREPLACE(A2:A4,"([A-Za-z])(\d)","$1 - $2"),B2:B4})