[英]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.