codice:
Sub Ordina()
   Dim ElementiRiga(6) As String
   Dim ContatoreElementi As Integer
   Dim LunghezzaRiga As Integer
   Dim Record As String
   Dim i As Integer, j As Integer
   Const SeparatoreOutput = ","
   Const FineRecord = ";"

   Open "Disco:\Cartelle\File.Input" For Input As #1
   Open "Disco:\Cartelle\File.Output" For Output As #1

   While Not Eof(1)
       ContatoreElementi = 1
       Line Input #1, Record
       LunghezzaRiga = Len(Record)
       ElementiRiga(ContatoreElementi) = ""
       'separa numeri
       For i = 1 To LunghezzaRiga
           If IsNumeric(Mid(Record,i,1)) Then
               ElementiRiga(ContatoreElementi) = ElementiRiga(ContatoreElementi) & Mid(Record,i,1)
           Else
               ContatoreElementi = ContatoreElementi + 1
               If ContatoreElementi > 5 Then
                   ElementiRiga(ContatoreElementi) = ""
               End If
           End If
       Next i
       
       'ordina
       For i = 1 To 4
           For J = i+1 To 5
               If CInt(ElementiRiga(j)) < CInt(ElementiRiga(i)) Then
                   ElementiRiga(0) = ElementiRiga(j)
                   ElementiRiga(j) = ElementiRiga(i)
                   ElementiRiga(i) = ElementiRiga(0)
               End If
           Next J
       Next i
       
       'scrivi
       For i = 1 To 5
           Print #2, ElementoRiga(i), SeparatoreOutput;
       Next i
       Print #2, FineRecord
   Wend
   
   Close #1
   Close #2
End Sub
L'ho scritta al volo, potrebbe contenere orrori...
Avrei potuto usare la split per dividere i numeri. Così funziona con qualsiasi separatore