You could try a different method and define a structure.....
Dim stud(24) As Students
Dim tmpStud As Students
Structure Students
Dim StudentName As String
Dim CumulativeScores As Double
End Structure
For i = 0 To stud.Count - 2
If stud(i).CumulativeScores > stud(i + 1).CumulativeScores Then
tmpStud = stud(i + 1)
stud(i + 1) = stud(i)
stud(i) = tmpStud
End If
Next
Begginnerdev
Practically a Posting Shark
864 posts since Apr 2010
Reputation Points: 184
Solved Threads: 142
Skill Endorsements: 8
Or you could use a SortedList and not have to do the sort yourself.
Dim mylist As New SortedList
mylist.Add("John", 23)
mylist.Add("Jim", 14)
mylist.Add("Fred", 92)
For Each key As String In mylist.Keys
Debug.WriteLine(key & ": " & mylist(key))
Next
Reverend Jim
Carpe per diem
3,600 posts since Aug 2010
Reputation Points: 561
Solved Threads: 447
Skill Endorsements: 32
One final comment on SortedLists. If the item you want to sort is not a primitive data type (String, Integer, etc) then you have to specify a user-written function that compares two elements and returns a value of -1, 0, or 1. This custum function is then used by SortedList to do the sort. You would need to do this if (as BeginnerDev suggested) you created a structure to hold your data.
If you have your answer then please mark this thread as solved.
Reverend Jim
Carpe per diem
3,600 posts since Aug 2010
Reputation Points: 561
Solved Threads: 447
Skill Endorsements: 32
Hi
If Sortedlist doesn't work for you you can also try a DataTable. A DataTable has a DefaultView property, which is a DataView for the table and a DataView has a Sort property which allows you to sort your data by any column in either direction e.g. "PlayerPoints Desc"
G_Waddell
Practically a Master Poster
619 posts since Nov 2009
Reputation Points: 107
Solved Threads: 93
Skill Endorsements: 5