E\' un po\' grezzo (l\'ho fatto quando ero ancora un junior ;) ) perņ funziona e lo uso ancora: Function DoSort(Array) As Variant Print "Ordinamento dei campi trovati in corso..." Dim inizio As Integer, fine%, i%, k%, m%, z%, bsort%, endsort% inizio = Lbound(Array) fine = Ubound(Array) Redim SortArray(1) As String SortArray(0) = Array(inizio) bsort = Lbound(SortArray) For i = inizio + 1 To fine endsort = Ubound(SortArray) For k = 0 To endsort If Array(i) < SortArray(k) Then Redim Preserve SortArray(i + 1) As String Redim Temp(i + 1) As String \'inserimento elemento For m = k + 1To i + 1 Temp(m) = SortArray(m - 1) Next For z = k + 1 To i + 1 SortArray(z) = Temp(z) Next SortArray(k) = Array(i) Exit For End If \'aggiunta elemento If k = endsort Then Redim Preserve SortArray(i) As String SortArray(i) = Array(i) End If Next Next \'Eliminazione dell\'ultimo spazio vuoto dell\'array Redim Preserve SortArray(Ubound(SortArray) - 1) DoSort = SortArray End Function ciao P.
|