A bubble-sort LotusScript function. Function was used with a string based array variant passed.  
(This ascending alphanumeric sort uses a simple < / > test. The sorting may not work as expected for special characters and double byte character sets. ) 
 
Function SortList (srcLst As Variant) As Variant 
   ' sorts incoming list 
   Dim top As Integer 
   Dim bottom As Integer 
   Dim CurrentItem As Integer 
   Dim NextItem As Integer 
   Dim tmpVar As Variant                        ' temp variable to hold current value being moved in list 
 
   If Not (Isarray(srcLst)) Then 
      ' not a list, return original value 
      SortList = srcLst 
   End If 
 
   top=Ubound (srcLst) 
   Bottom=Lbound (srcLst) 
 
   For CurrentItem=bottom To top 
      NextItem = CurrentItem 
      Do While NextItem > Bottom 
         If (srcLst(NextItem) > srcLst(NextItem-1)) Then 
            Exit Do 
         Else 
            tmpVar=srcLst(NextItem) 
            srcLst(NextItem)=srcLst(NextItem-1) 
            srcLst(NextItem-1)=tmpVar 
         End If  
         NextItem=NextItem-1 
      Loop 
   Next 
   SortList = srcLst 
End Function
  
previous page
 
  |