求将同一单元格内容进行拆分的公式
各位大神好:目前公司考勤使用的钉钉,导出的考勤结果无法直接使用,希望通过公式将表1的每日考勤结果拆分成表2的上下午的形式,也找了一些公式,但无法将三种情况都涵盖,请各位大神帮忙,谢谢~
=TRIM(MID(SUBSTITUTE(REPT(TRIM(OFFSET(表1!$A$2,,LEFTB(B$1,2)))&" ",2)," ",REPT(" ",20)),MOD(COLUMN(B:B),2)*20+1,20))
右拉下拉。
用PQ做的,公式想不出来
=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号开始出错了,在你的基础上稍微调整下 多谢提醒,
LEFTB(B$1)改成这样LEFTB(B$1,2)就可以了。 向您请教下LEFTB这个函数
LEFTB("7上",2)为啥返回的是"7 ",7后面有个空格,可能不是空格,我点一下单元格,空格就不见了
LEFTB("7上",3)能够直接返回"7上"
这个函数微软官方文档也没有解释。 写个笨的,不引用第一行
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))
右拉 leftb,从左起,截取字节数
一个汉字按2个字节计算
LEFTB("7上",2)截取到7时,消耗1个字节,再截取上时,字节已经不够了,所以只能截取7 帮助文件里的说明。
LEFT 返回文本字符串中第一个字符或前几个字符。
LEFTB 基于所指定的字节数返回文本字符串中的第一个或前几个字符。
函数 LEFT 面向使用单字节字符集 (SBCS) 的语言,而函数 LEFTB 面向使用双字节字符集 (DBCS) 的语言。您计算机上的默认语言设置对返回值的影响方式如下:
无论默认语言设置如何,函数 LEFT 始终将每个字符(不管是单字节还是双字节)按 1 计数。
当启用支持 DBCS 的语言的编辑并将其设置为默认语言时,函数 LEFTB 会将每个双字节字符按 2 计数,否则,函数 LEFTB 会将每个字符按 1 计数。 万分感谢您的帮助,大大降低了工作量,谢谢~