用于特定输入的Excel VBA代码,其中包含字母数字字符的组合

时间:2017-03-07 09:45:53

标签: excel excel-vba excel-formula vba

我实际上想删除任意数量的单个数字,数字组合和字母数字组合。我想在excel帮助中为以下数据提供VBA代码。输入为“Android Browser hsu601 0 1234”输出应为“Android Browser”。请帮忙。提前谢谢。

1 个答案:

答案 0 :(得分:0)

赛义夫,我昨天给你的代码完全按照你在这个问题中描述的那样做。

Function strip_non_alpha_words(sentence As String) As String
Dim wrd_to_check As String
Dim wrd As Variant
For Each wrd In Split(sentence, " ")
    wrd_to_check = wrd
    If wrd_to_check = alpha_only(wrd_to_check) Then
        strip_non_alpha_words = strip_non_alpha_words & wrd_to_check & " "
    End If
Next
strip_non_alpha_words = Trim(strip_non_alpha_words)
End Function

Function alpha_only(mixedStr As String) As String
Dim ltr As Long, ascii_code As Long
For ltr = 1 To Len(mixedStr)
    ascii_code = Asc(UCase(Mid(mixedStr, ltr, 1)))
    If (ascii_code > 64 And ascii_code <= 90) Or (ascii_code >= 40 And ascii_code <= 41) Then
        alpha_only = alpha_only & Mid(mixedStr, ltr, 1)
    End If
Next
End Function

您可以在公式(UDF)中使用它,如下所示:

=strip_non_alpha_words(A1)

将此项与您的TRIM和多个SUBSTITUTE公式结合使用可能会有所帮助,但如果Application v1.3.B之类的内容与{{{}}相似,那么您仍然会遇到问题1}}仍然会通过。