其实,在VBA中可以使用其他编程语言中使用的排序方法,只是语法不同而已。 以下就是冒泡排序的一个简单例子。如果区域有变化,作相应改动即可。 Sub 冒泡排序() Dim i As Integer, Temp As Variant Dim arr() As Variant Dim OK As Boolean arr = Application.Transpose(Range("A10:A21")) Do OK = True For i = UBound(arr) To 2 Step -1 If arr(i - 1) > arr(i) Then Temp = arr(i - 1) arr(i - 1) = arr(i) arr(i) = Temp OK = False End If Next i Loop Until OK Range("A10:A21") = Application.Transpose(arr) End Sub