Buongiorno a tutti...
devo leggere un file *.txt con Visual Basic 6.0. Questo file di testo è strutturato in questo modo:
codice:
Nome Cognome SIGLA1 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 SIGLA2 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 SIGLA2 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 NUMERO1 NUMERO2 NUMERO3 NUMERO4
In pratica le righe sono quasi uguali...quasi perchè in alcuni nominativi ci sono 2 sigle ed in altri una sigla. Tutte le parole o numeri sono divisi da uno spazio. Questo file di testo devo infine rinominarlo in file di exel *.xls, ma prima però devo effettuare delle sostituizioni per adattarlo all'*.xls. Queste sostituiranno gli spazi con dei vbTab. Questo dovrebbe essere il risultato:
codice:
Nome Cognome SIGLA1 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 SIGLA2 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 SIGLA2 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Nome Cognome SIGLA1 NUMERO1 NUMERO2 NUMERO3 NUMERO4
Il problema è che questo risultato non può essere riprodotto con un semplice Replace perchè il primo spazio deve saltarlo e lo spazio tra una sigla e l'altra deve saltarlo (in alcune righe c'è solo una sigla). Tutte le sigle sono testuali.
Io avevo provato così:
codice:
Replace(Testo, " ", vbTab)
...risultati pessimi dato che mi sotituisce tutti gli spazi.
Poi ho pensato di fare così:
Se è il primo spazio allora non sostituire
Se è il terzo spazio e il carattere successivo non è numerico allora non sostituire
Altrimenti sostituisci tutti gli spazi
...non riesco minimamente a creare questo controllo!!!
Spero che abbiate capito anche se non mi sono espressa benissimo.