Ciao Seyen, ti posso assicurare che eri stato chiaro, comunque volevo fare una precisazione per quanto hai detto: il problema non è che vengono considerati come stringhe anzichè come numeri, altrimenti bastarebbe scrivere:
codice:
dim LI as listitem
Set LI = ListView1.ListItems.Add(, , cnlg(numero), 0, 0)
e avresti trasformato la presunta stringa in un valore Long, quindi numerico.
Questo tipo di ordinamento comunque lo si ritrova anche in alcuni telefoni cellulari, in particolare nelle rubriche: io avevo 10 numeri sconosciuti e li ho salvati come "?(1)" "?(2)" ecc..fino a 10:
quando scorro la rubrica trovo prima il numero 1, poi il 10, poi il 2 e così via..
Per quanto mi ricordo l'unica possibilità è ricorrere magari a qualche funzione API oppure a creare una funzione che faccia ciò che chiedi..
ciao