Newsgroup: it.comp.appl.access
Titolo: Dividere Campi in Automatico..???

....non sň se il titolo del messaggio č appropriato ma avevo questo
problema....
conosco poco Access e vorrei un aiuto x creare una macro...o altro..non sň.
il mio problema č questo...in ufficio mi arriva ogni 2/3 mesi un DB
chiamiamolo cosě, in formato testo (TXT) e tutti i caratteri sono scritti
attaccati (non mi spiego il perchč arrivino cosě)...Esempio:
1237347487843988DRFNBHHJ7676HHHJ996YFD788399893898499558494899884646
essi hanno un significato ...nel senso che i primi tre numeri sono un codice
regionale, i secondi tre numeri sono un codice aziendale... poi vi č un
codice fiscale e via procedendo...
ogni volta che arriva stň file devo procedere manualmente con Excel o Access
ad importarlo e selezionare i campi...manualmente con evidente perdita di
tempčo ed erroti...
....le spaziature dei campi risultano essere realmente......
3-3-5-1-6-16(Cod.Fiscale)-Cognome-Nome-1-Datanascita(8
cifre)-5-3-16-2-7-1-8-1-1-1-5-1-3-1-----
Grazie tantissimo a chi potrŕ darmi una mano... !!!


Per caso la domanda è: "come posso fare per non utilizzare Excel o/ed
evitare di fare l'operazione di importazione tutta a mano?".
Se il file ha sempre lo stesso nome; se la struttura interna dei dati è
sempre la stessa; puoi collegare il file di testo..
Ciao.

 sempre la stessa; puoi collegare il file di testo..
--------------------
Ok Sergio...il tuo titolo sembra + appropriato... cosa che x me sarebbe
anche indifferente poetr usare Excel o Access x risolvere questo
problema....
il file anche se non ha lo stesso nome...lo cambio quale č il problema ???
sia la struttura interna...che la sequenza dei dati č sempre la stessa...
posso collegare il file di testo ??? cosa vuoi dire... ???

 wrote in message


 buon lavoro
------------
Grazie... Harry...ma questo già lo faccio... in Excel o Access... conosco il
tracciato...
siccome la cosa si ripete spesso... volevo sapere il modo x automatizzare
tutto ciò !!


Il problema del cambio nome.. č un problema! Almeno per me... Comunque
lasciando perdere il nome del file che potresti "agevolmente" risolvere;
collegare un file di testo č nientepopňdimenoche la stessa operazione che
fai quando colleghi (menů: File - carica dati esterni - collega tabelle)
tabelle access che sono su un altro file mdb. Alla fine gestirai la
"tabella" (file di testo) come se fosse un'altra tabella di access...
Ciao.


-----------
Ok Sergio... quello che dici tu lo sò fare sia in Excel che in Access...  a
livello manuale avendo il tracciato è semplice... però volevo automatizzare
la cosa... dato che è un lavoro che eseguo di routine una volta ogni 2
mesi... cmq.. non fà niente... non è un lavoro lungo dopotutto...Grazie..


Tu dici? Sei sicuro che sia la stessa cosa? A mio avviso no...
Ciao.

 >
grazie...provo a vedere se funge x il mio caso...grazie...


Guarda che Harry ti ha risposto. Comunque una piccola dritta:
devi utilizzare VBA di acces o excell:  dal file testo originale crei un
file testo delimitato che potrai importare ovunque.
Devi aprire 2 due file con l'ISTRUZIONE  Open (la stessa del vecchio Basic
in DOS) . In un loop leggi un record (una riga) riscrivendolo nel nuovo file
il quale avrà  lo stesso tracciato record con l'avvertenza di inserire
fra ogni campo un campo da 1 carattere a cui assegnerai il carattere di
delimitazione (virgola oppure punto e virgola o tabulazione ecc.); il loop
naturalmente terminerà a fine file.
  se il rec. Originale è
Type Rec1
    c1 As String * 3    'campo1
    c2 As String * 3    'campo2    ecc.
    c3 As String * 5
    c4 As String * 1
    c5 As String * 6
    eccetera
End Type
Il tracciato rec. nuovo sarà
Type Rec2
    c1 As String * 3
    d1 As String * 1    'carattere di delimitazione
    c2 As String * 3
    d2 As String * 1    'carattere di delimitazione
    c3 As String * 5
    d3 As String * 1    'carattere di delimitazione
    eccetera
    dx As String * 2    ' Ultimo campo 2 caratteri di fine record  (vbCrLf )
End Type
Per non riscrivere i nomi dei campi tutte le volte potresti, con un editor
di testo, aggiungere all'inizio una riga con tutti i nomi separati dal
delimitatore scelto oppure importare il tutto in una tabella predifinta
vuota.
Non è molto difficile anche se non conosci il basic. l'Help o un buon testo
ti sarà di aiuto.  Buon lavoro!!
Mirko