Excelmacros和正则expression式
我有一个Excel表中包含一些数据的列。 我想编写一个macros来replace单元格内容,使用特殊字符前面出现的单词。 例如:
细胞内容:
M.Ramalingam S/o Mahalingam
应该换成:
M.Ramalingam
细胞内容:
Balkis Beevi Wo Mahamed Ali Jinna
应该被replace为:
Balkis Beevi
就像是
Function StrNew(strIn As String) As String Dim objRegexp As Object Set objRegexp = CreateObject("vbscript.regexp") With objRegexp .Pattern = "^(.+)\b.+[\-\/].*?$" StrNew = .Replace(strIn, "$1") End With End Function
您应该使用自定义公式:
Function CHANGE(text As String, char As String) Dim sArray() As String sArray() = Split(text, char) CHANGE = Trim(sArray(0)) End Function
那么你可以在单元格中这样使用它:“= CHANGE(B2;”S / o“)”第一个参数是包含要分割文本的单元格,第二个参数是特殊字符。
我希望这可以帮助你…