What would be the end result? By that I mean: If the end result is a .CVS or .XLS then sorting the original with Excel would be quite easy. If Excel (or something similar) is no longer part of the process then I’d suggest:
Set up a Type to contain individual rows of data
Create a new Collection.Code:Public Type CVSData A As Integer B As Double C As Double D As String E As String F As Double End Type
Start iterating through the CVS file to create an instance of CVSData for each row. Dim typRow as CVSData
For the first line just add the typRow to the Collection. Collection.Add typRow
For subsequent lines, iterate through the items already in the collection to find the first place where Collection.Item.F > typRow.F.
The Collection Add method has these optional parameters
Collection.Add Item, [Key], [Before], [After]
Then Collection.Add typRow, , Collection.Item.F
Should create an ascending ordered collection.