Originariamente inviato da Luciano79
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 "c:\daordinare.txt" For Input As #1
   Open "c:\ordinato.txt" For Output As #2

   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
Mi dice errore compilazione script a riga 2 carattere 24...
in sostanza la riga che ho riportato in grassetto...
ma essendo quasi a digiuno di sifatta programmazione
ignoro di cosa si possa trattare..

mi illumini?

grazie!

ps: io ho messo papale papale il codice sopra riportato in un file txt modificandone poi l'estensione in .vbs