excel数字自动排序,并删除重复数值

来源:百度知道 编辑:UC知道 时间:2024/05/29 07:55:25
从A1-H10中,共80个数据,进行排列,由小到大,并且删除其中的重复数据,

在A11后按行排列,每行8个,并自动换行。

请详细说明,谢谢!

其实代码不必这么长,我来精简一下(10行足矣):

Sub cal()
Dim i, j As Long
[A11:H20].ClearContents
j = 2
[A11] = WorksheetFunction.Small([A1:H10], 1)
For i = 2 To WorksheetFunction.Rank(WorksheetFunction.Min([A1:H10]), [A1:H10])
[A11:H20].Cells(j) = WorksheetFunction.Small([A1:H10], i)
If [A11:H20].Cells(j) = [A11:H20].Cells(j - 1) Then GoTo ne
j = j + 1
ne:
Next
End Sub

====================================================================
上述代码使用方法:

Alt+F11-->Alt+I(字母)-->M键-->复制粘贴上述代码

执行请按: 工具栏上"运行子过程"按钮 (向右的小三角形图标)

Sub xx()
i = 0
r = 11
c = 1

Do While x <> WorksheetFunction.Max([a1:h10])
Do
i = i + 1
x = WorksheetFunction.Small([a1:h10], i)
Loop While WorksheetFunction.CountIf([a11:h20], x)
Cells(r, c) = x
c = c + 1
If c = 9 Then
c = 1
r = r + 1
End If
Loop
End Sub

用如下V