这个可以通过vba实现,代码如下:
Sub 取值并排序()
Dim shu(1 To 25) As Integer
Dim rng As Range
Dim i, j, k, l As Integer
i = 1
For Each rng In Range("a1:e5")
If rng.Value > 0 Then
shu(i) = rng.Value
i = i + 1
End If
Next rng
For j = 1 To UBound(shu) - LBound(shu)
For k = 1 To UBound(shu) - LBound(shu)
If shu(k) > shu(k + 1) Then
l = shu(k)
shu(k) = shu(k + 1)
shu(k + 1) = l
End If
Next k
Next j
Range("a7:y7") = shu
For i = 0 To 24
If Range("a7") = 0 Then
Range("a7").Delete
Else
Exit For
End If
Next i
End Sub