学习VBA的同学经常会用到数组的排序,网上介绍的程序算法一般都是举例一维数组,
而一般实际使用时更多的需要对二维数组进行排序,本人结合大家分享的冒泡排序算法
编写了二维数组的冒泡排序实例,供大家参考。
增加了升降序选择,排序列号选择,以及标题行数等实际需要使用的参数
Private Sub test()
Dim arr()
Sheets("sheet1").Select
Row = Sheets("sheet1").UsedRange.Rows.count
col = Sheets("sheet1").UsedRange.Columns.count
ReDim arr(1 To Row, 1 To 6)
arr = Range("a1:F" & Row)
arr = bubblesort(arr, 0, 2, 2)
Range("j1:O" & Row) = arr
End Sub
以下为VBA二维数组冒泡排序实例
Public Function bubblesort(ByRef snarray(), sort As Boolean, column As Integer, title As Integer)
'sort 为升降序标记,column为需排序列,title为标题行数(不参与排序的行数)
Dim iouter As Long
Dim iinner As Long
Dim ilbound As Long
Dim iubound As Long
Dim issort As Boolean
Dim count As Integer
Dim temp As Int