VBA删除特殊字符

时间:2014-05-26 07:18:54

标签: vba

我需要从A-Z,a-z,0-9之外的字符串中完全删除所有特殊字符(可见/不可见)的功能。我已经准备好了一些函数,我发现它的离开逗号(,)不知何故:O。也许更多我不知道。请你看看和建议:

Function RemoveSpecialChars(Tekst As String) As String

        Dim a$, b$, c$, i As Integer

        a$ = Tekst
        For i = 1 To Len(a$)
            b$ = Mid(a$, i, 1)
            If b$ Like "[A-Z,a-z,0-9]" Then
                c$ = c$ & b$
            End If
        Next i

        RemoveSpecialChars = c$

End Function

1 个答案:

答案 0 :(得分:4)

只需删除逗号:

If b$ Like "[A-Za-z0-9]" Then

正如Visual Basic所说on MSDN

  

要为同一个字符位置指定多个范围,请将它们放入   在没有分隔符的相同括号内。例如,[A-CX-Z]   如果字符串中的相应字符位置匹配,则结果匹配   包含A-C范围或X-Z范围内的任何字符。

虽然MSDN没有特别提及VBA,但它显示了相同的行为。