有時需要將Excel單元格內字符串中的重復字符提取出來,例如提取字符串“abcdeAbcDe”中重復的幾個字符“bce”,如圖所示,可以用自定義函數實現。
1.按Alt+F11,打開VBA編輯器。
2.單擊菜單“插入→模塊”,在代碼窗口中粘貼代碼:
Function GetDupChar(theString As String) As String
Dim i As Integer
For i = 1 To Len(theString) – 1
If Len(theString) – Len(Replace(theString, Mid(theString, i, 1), "")) > 1 Then ‘
If InStr(GetDupChar, Mid(theString, i, 1)) = 0 Then GetDupChar = GetDupChar & Mid(theString, i, 1)
End If
Next
End Function
3.關閉VBA編輯器,返回Excel工作表界面。
假如字符串在A2單元格,在B2輸入公式:
=GetDupChar(A2)
要將多個單元格中的字符串合并后提取重復字符,如A3單元格為“12345123”,A4單元格為“mnc12526”,在B8單元格輸入公式:
=GetDupChar(A3&A4)
將返回這兩個單元格中字符串合并后重復的字符“1235”。