excel的一个单元格里有一个多位数,各位的数字可能有相同的,把相同的去掉只留一个,不能改变各位数的顺序

来源:百度知道 编辑:UC知道 时间:2024/06/04 01:01:29
如:33522342121 变为:35241
对于最佳答案,追加50分

按下ALT+F11,菜单:插入-模块,然后复制下面代码
假设你在A1中输入字符串,那就在B1中输入=ORDER(A1)
这样B1就是你要得到的数字.

Public Function order(ByVal m As String) As String
Dim a() As String
ReDim a(1 To Len(m)) As String
For x = 1 To Len(m)
If InStr(1, m, Mid(m, x, 1)) < x Then
a(x) = ""
Else
a(x) = Mid(m, x, 1)
End If
Next
For x = 1 To Len(m)
order = order & a(x)
Next
End Function

没有办法

数据在A1,在B1输入公式=LEFT(TEXT(SUM(RIGHT(LEFT(A1&0,LARGE(FIND(ROW($1:$10)-1,A1&5^19),ROW($1:$10))))*10^ROW($1:$10)),REPT(0,11)),COUNT(FIND(ROW($1:$10)-1,A1)))数组公式,公式在编辑的状态下按CTRL+SHIFT+ENTER结束