那如果我的内容不是上面的而且比上面的字多,岂不是还要改公式。我要的是自动识别的,比如:
原内容为: xxxxxxxxxxxxxx…… 要改为x x x x x x x x x x x x x x…… 注意此处的字符串字数不定哦。要他自动识别的在每个字中间加空或任意内容 公式中要变量,不要那指定第几个字符后加内容的,要任意字符中间加空格的。
不明白这种问题为什么不用宏解决?用宏的话很方便,写个自定义函数立马就能解决,而且用起来跟函数一样,只不过就是需要改变下宏安全性即可。
函数的话确实没想到什么好的方法可以实现每个字之间都加空格的(即XXXX变成X X X X),如果你只要头尾两个字之间加空格(即XXXXXXX变成X XXXXX X),那函数还是很好实现的,公式如下
=CONCATENATE(LEFT(A1,1)," ",MID(A1,2,LEN(A1)-2)," ",RIGHT(A1,1))
如果你非要用函数来实现的话可以参考 byl341010202 的回答,将他的公式修改为以下形式(假设你的数据在A列里,那就在B1中写入以下公式并一直右拉至公式出错即可):
=SUBSTITUTE(A1,MID(A1,LEN($A1)-COLUMN(A1),1),MID(A1,LEN($A1)-COLUMN(A1),1)&" ")
然后通过一直右拉至公式出错也可以实现
附自定义函数代码
Public Function fg(rng As Range)如果原内容是
定义外部参照或块剪裁边界,并且设置前剪裁面和后剪裁面
怎么变为 定 义 外 部 参 照 或 块 剪 裁 边 界,并 且 设 置 前 剪 裁 面 和 后 剪 裁 面,函数中要有个变量啊。否则每句不同的话都要改公式,岂不是要累死。那还不如手动加呢