从单元格中的文本中删除前导分号和尾随分号
假设在某个单元格中有一段文字看起来像
;ABCD;EFGH ;;ABCD;EFGH;
如何仅从开始和结束删除分号。 结果应该是
ABCD;EFGH
我相信有更好的方法来做到这一点,但它的工作原理!
Public Function SplitSemiColon(s As String) As String While Left(s, 1) = ";" s = Mid(s, 2) Wend While Right(s, 1) = ";" s = Left(s, Len(s) - 1) Wend SplitSemiColon = s End Function
将代码放在一个新的模块中,并像这样使用工作表中的函数(例如):
=SplitSemiColon(A1)
如果没有空格,则可以将其转换为空格,修剪和转换:
=Substitute(Trim(Substitute(A1,";"," "))," ",";")
TRIM
删除多余的空格,所以上面会变成;A;;;B;
到A;B
,但VBA Trim
不:
[A1] = Replace(Trim(Replace([A1],";"," "))," ",";") ' ";A;;;B;" into "A;;;B"
如果有空格,可以用不同的字符replace,但是太乱了:
=Substitute(Substitute(Trim(Substitute(Substitute(A1," ","_"),";"," "))," ",";"),"_"," ")