有网友在群里提出了一个关于Excel单元格字符串连接的问题,问题如下:
有四列数据,其中每一列的单元格可能有数据也可为空,问如何将前面四列的内容用连字符~连接起来并在E列中显示,即下面的效果:
我琢磨了一下,方法如下:
1。先用=CONCATENATE(A1&"~"&B1&"~"&C1&"~"&D1)函数将四列数据合并,得到E列; 2。再用=SUBSTITUTE(E1,"~~","~")函数将E列字符串中连续出现两次~~的替换成一个~; 3。去掉字符串前端和末端的~ 3.1 用 =LEFT(E1,1) 函数提出F列第一个字符,得到G列; 3.2 H列函数 =IF(G1="~",REPLACE(F1,1,1,""),F1) 判断第一个字符是否为~,如果是,则用replace函数将第一个字符替换为空,否则仍为原来的字符串; 3.3 同3.1, I列用 =right(E1,1)提取F列字符串的最后一个字符; 3.4 =IF(I1="~", REPLACE(H1,LEN(H1),1,""),H1) ,同3.2,判断末尾字符是否为~,其中,len(H1)是判断H1的字符长度,该数值则为替换的开始位置。 4。打完收工。
用了几个字符串处理函数,方法可能麻烦了,权当练习了!
|