有5个数字的字符串"9 10 13 4 10"
要去掉里面相同的一个 可能有2个
如果有1个相同的话那么最后就有一个空格"9 10 13 4 "
如果有2个相同的话那么最后要有2个空格"9 10 13 "
要去掉里面相同的一个 可能有2个
如果有1个相同的话那么最后就有一个空格"9 10 13 4 "
如果有2个相同的话那么最后要有2个空格"9 10 13 "
调试欢乐多
Private Type TyStrNum
ArryNum(1 To 5) As String
Flag(1 To 5) As Boolean
End TypePrivate Sub CopeWith()
StrNum = "12 5 14 5 456"
Dim I As Integer
Dim J As Integer
Dim TyStrNum1 As TyStrNum
TyStrNum1.ArryNum = Split(StrNum, " ")
For I = 1 To 5
TyStrNum1.Flag(I) = False '初始化 暂定所有的元素都不重复
Next
For I = 1 To 4 '标出所有重复的数据
If TyStrNum1.Flag(I) = False Then
For J = I + 1 To 5
If CLng(TyStrNum1.ArryNum(I)) = CLng(TyStrNum1.ArryNum(J)) Then
TyStrNum1.Flag(J) = True
End If
Next
End If
Next
' StrNum = Join(TyStrNum1.ArryNum, " ")
StrNum = TyStrNum1.ArryNum(1)
J = 1
For I = 2 To 5
If TyStrNum1.Flag(I) = False Then
StrNum = StrNum & " " & TyStrNum1.ArryNum(I) '重新连接成字符串
J = J + 1
End If
Next
StrNum = StrNum & Space(5 - J) '补 空格
End Sub