|
Domanda.
nome=Andrea
cognome=Locarni
versione=2000 e 2002
conosco2=medio
vba=SI
macro=SI
email=alocarni@datasensor.com
chra=74
problema=Ciao Ennius, Devo ordinare un elenco in Excel2000 in base a una
colonna con celle formattate in Testo.
I caratteri nelle celle sono alfanumerici con 1 o 2 o 3 o 4
caratteri testo all'inizio e 1 o 2 o 3 o 4 numeri successivi:
esempio:
Colonna da ordinare:
C1
C2
C3...
C9
C10
C11...
C100 ecc...
Oppure:
TP1
TP2
TP3...
TP10...
TP100...
L'ordinamento di Excel parte dal carattere testo e ordina come:
C1
C10
C100
C101...
C109
C11
Vorrei ordinare l'elenco in base al numero successivo ai
caratteri, ottenendo l'ordine corretto:
C1, C2, C3,...C10, C11,...C100, C101 ecc...
Puoi aiutarmi con una Funzione o una macro per il foglio di lavoro?
Le righe da trattare sono alcune centinaia, quidi la macro deve
prevedere un ciclo per ogni riga fino al termine del range.
Ho una piccola conoscenza delle macro e VBA.
Grazie 1.000 e vivissimi complimenti per il sito !!!!
Andrea
Risposta.
salve Andrea, non è difficile da capire: in programmazione lo zero è più
grande di uno per quanto riguarda un ordinamento basato su testo e non su
numeri; dovrai quindi inserire prima dell'uno, tani zeri quante saranno le
unità che compongono i tuoi codici: se per esempio avrai codici fino a 9999
(quattro unità), per poterli avere in ordine dovranno iniziare con
C0001
C0002
C0003
ecc, le centinaia saranno così scritte:
C0100
C0101
C0102
ecc.
solo in questo modo riesci ad ottenere l'ordinameno, ed è la maniera più
consona per utilizzare le centinaia o le migliaia. o le centinaia di
migliaia, ecc. ecc., in codici alfanumerici.
Armati quindi di pazienza e ricodifica i tuoi codici. In futuro, saprai come
comportarti.
saluti, ennius
|