0
您能否帮助我制作从单元格获取字符串值并按字母顺序对其字符进行排序的Excel公式?Excel公式从单元格中获取字符串值并按字母顺序对其字符进行排序
Ex。
原始细胞值: 'BACR' 排序字符单元: 'ABCR'
您能否帮助我制作从单元格获取字符串值并按字母顺序对其字符进行排序的Excel公式?Excel公式从单元格中获取字符串值并按字母顺序对其字符进行排序
Ex。
原始细胞值: 'BACR' 排序字符单元: 'ABCR'
此UDF将通过字符数字和文本字符排序:
Function sortletter(rng As Range)
If rng.Count > 1 Then Exit Function
Dim srtArr() As String
Dim i&, j&, k&
ReDim srtArr(1 To Len(rng))
srtArr(1) = Mid(rng, 1, 1)
For i = 2 To UBound(srtArr)
For j = 1 To UBound(srtArr)
If srtArr(j) = "" Then
srtArr(j) = Mid(rng, i, 1)
Exit For
ElseIf IIf(Asc(Mid(rng, i, 1)) > 96, Asc(Mid(rng, i, 1)) - 32, Asc(Mid(rng, i, 1))) <= IIf(Asc(srtArr(j)) > 96, Asc(srtArr(j)) - 32, Asc(srtArr(j))) Then
For k = UBound(srtArr) To j + 1 Step -1
srtArr(k) = srtArr(k - 1)
Next k
srtArr(j) = Mid(rng, i, 1)
Exit For
End If
Next j
Next i
sortletter = Join(srtArr, "")
End Function
将这个是一个模块附加到工作簿,而不是在工作表或ThisWorkbook代码中。
然后,它可以被称为像任何其他配方
=sortletter(A1)
哇!你摇滚!谢谢! –
向我们展示你已经尝试什么,在哪里,你遇到了麻烦。你使用的是什么版本的Excel? –
“无限”长度的字符串,全部是否为alpha? - VBA是否可以接受? – pnuts
你正在使用的功能/代码是什么? – BruceWayne