簡體   English   中英

除某些字符功能外,提取excel范圍內的唯一字符

[英]extract unique characters in an excel range except some characters function

如果excel有A1:B100中的字符串數據,我想提取AZ az 0-1以外的字符並每個字符顯示一次。 我想得到像 +、- 等。有人可以幫我嗎?

示例數據是

+------------+------+
|    ColA    | ColB |
+------------+------+
| Blue Berry | 4    |
| Apple      | 4+   |
| Orange;    | 44   |
+------------+------+

我想要一個單元格中的結果為 Space+;

嘗試這個:

Sub showspecials()
    Dim r As Range, rng As Range, msg As String
    Dim S As String, L As String, CH As String
    Set rng = Range("A1:B100")
    msg = ""

    For Each r In rng
        S = r.Text
        L = Len(S)
        If L <> 0 Then
            For i = 1 To L
                If Mid(S, i, 1) Like "[0-9a-zA-Z]" Then
                Else
                    msg = msg & vbCrLf & Mid(S, i, 1)
                End If
            Next i
        End If
    Next r

        MsgBox msg
End Sub

在此處輸入圖片說明

如果您希望一個字符在MsgBox出現一次,請使用:

Sub showspecials()
    Dim r As Range, rng As Range, msg As String
    Dim S As String, L As String, CH As String
    Dim i As Long, pat As String

    Set rng = Range("A1:B100")
    msg = ""
    pat = "[0-9a-zA-Z]"

    For Each r In rng
        S = r.Text
        L = Len(S)
        If L <> 0 Then
            For i = 1 To L
                CH = Mid(S, i, 1)
                If CH Like pat Then
                Else
                    If InStr(msg, CH) = 0 Then
                        msg = msg & vbCrLf & CH
                    End If
                End If
            Next i
        End If
    Next r

        MsgBox msg
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM