庾健铭 发表于 2021-10-14 14:35:00

求将同一单元格内容进行拆分的公式

各位大神好:
目前公司考勤使用的钉钉,导出的考勤结果无法直接使用,希望通过公式将表1的每日考勤结果拆分成表2的上下午的形式,也找了一些公式,但无法将三种情况都涵盖,请各位大神帮忙,谢谢~


锦鸿天宇 发表于 2021-10-19 06:17:29

=TRIM(MID(SUBSTITUTE(REPT(TRIM(OFFSET(表1!$A$2,,LEFTB(B$1,2)))&" ",2)," ",REPT(" ",20)),MOD(COLUMN(B:B),2)*20+1,20))

右拉下拉。

精神病院院长 发表于 2021-10-23 14:13:53


用PQ做的,公式想不出来

用户上下同欲者胜 发表于 2021-10-25 23:17:49

=TRIM(MID(SUBSTITUTE(REPT(TRIM(OFFSET('表1'!$A$2,,LEFT(BK$1,LEN(BK$1)-1)))&" ",2)," ",REPT(" ",20)),MOD(COLUMN(BK:BK),2)*20+1,20))
你的公式从10号开始出错了,在你的基础上稍微调整下

有心妈妈 发表于 2021-10-30 04:37:33

多谢提醒,
LEFTB(B$1)改成这样LEFTB(B$1,2)就可以了。

西仓 发表于 2021-11-1 15:50:46

向您请教下LEFTB这个函数
LEFTB("7上",2)为啥返回的是"7 ",7后面有个空格,可能不是空格,我点一下单元格,空格就不见了
LEFTB("7上",3)能够直接返回"7上"
这个函数微软官方文档也没有解释。

尘封至今如此狼狈 发表于 2021-11-3 04:08:01

写个笨的,不引用第一行
B2
=IF(ISNUMBER(FIND(" ",OFFSET(表1!$B$2,,ROUNDUP(COLUMN(A:A)/2,)-1))),TRIM(MID(SUBSTITUTE(TRIM(OFFSET(表1!$B$2,,ROUNDUP(COLUMN(A:A)/2,)-1))," ",REPT(" ",50)),50^MOD(COLUMN(),2),50)),OFFSET(表1!$B$2,,ROUNDUP(COLUMN(A:A)/2,)-1))
右拉

周武粮 发表于 2021-11-10 07:44:20

leftb,从左起,截取字节数
一个汉字按2个字节计算
LEFTB("7上",2)截取到7时,消耗1个字节,再截取上时,字节已经不够了,所以只能截取7

陈秀香律师 发表于 2021-11-14 04:09:02

帮助文件里的说明。
LEFT 返回文本字符串中第一个字符或前几个字符。
LEFTB 基于所指定的字节数返回文本字符串中的第一个或前几个字符。
函数 LEFT 面向使用单字节字符集 (SBCS) 的语言,而函数 LEFTB 面向使用双字节字符集 (DBCS) 的语言。您计算机上的默认语言设置对返回值的影响方式如下:
无论默认语言设置如何,函数 LEFT 始终将每个字符(不管是单字节还是双字节)按 1 计数。
当启用支持 DBCS 的语言的编辑并将其设置为默认语言时,函数 LEFTB 会将每个双字节字符按 2 计数,否则,函数 LEFTB 会将每个字符按 1 计数。

湘湖风影 发表于 2021-11-14 14:21:35

万分感谢您的帮助,大大降低了工作量,谢谢~
页: [1] 2 3 4
查看完整版本: 求将同一单元格内容进行拆分的公式