Unire 2 File .cvs Come ?

Pubblicità

1enry1

Utente Attivo
Messaggi
607
Reazioni
12
Punteggio
56
quesito per un vero mago di office:

ho un database CSV con vari campi (nome, citta, stato ecc.... )
ora con un nuovo aggiornamento ALCUNI campi in questo
database non sono stati piu messi !

c'e una possibilita' e ovvio in modo "veloce" di fare una specie
di MERGE dei 2 databse in modo che quando ho il NUOVO
database dove mancano appunti alcuni campi , posso unire con
i dati del vecchio db che li ha tutti? credo sia fattibile ma come ?

magari per velocizzare visto che sono oltre 45.000 voci !
uno script , e meglio dite usare Excell o OpenOffice ?

grazie a chi mi sapra' aiutare

PS devo ancora aprirlo, come si capisce se fatto con excell o con access ?
 
Ciao,
salvo clamorosa smentita il file origine (Excel o Access) ha poca importanza salvo le capacità di memoria: il file Excel (o Office) risulterà più pesante.
Da Office (o da Excel) scegli un dato (colonna) univoco (p.esempio la P. IVA) e portane la posizione in 1^ colonna, poi metti tutte le righe in ordine crescente del dato (P.IVA o quello da te scelto). Nel file nuovo crea le colonne mancanti rispetto al vecchio e inserisci la formula (supponendo che la prima informazione sia in riga 2 e il dato mancante in colonna 3 del vecchio file) =cerca.vert(A2;'VECCHIOFILE.cvs'!$A$1:$AA$50000;3;falso), cioè "vai a cercare il dato in A2 in tutto il Vecchio File e riporta il contenuto della corrispondente riga della colonna 3, solo se è identico". Copia la formula in tutte le celle della colonna. Ripeti poi per tante colonne quante sono quelle nuove create, ovviamente cambiando il numero che identifica la posizione della nuova colonna (invece di 3, 7 o 10 o 1500 o ...)
 
devo unire 2 database fatti cosi :
2ebu0qr.jpg

http://i63.tinypic.com/2ebu0qr.jpg



strano pero' che in Excell sia tutto una riga e senza i vari campi , tipo nome, citta nazione , boh ?
mentre in Calc appaiono separati ma sempre TUTTI i gruppi sotto la voce "Standard"...
ora premesso che non ci capisco una mazza, come faccio s fondere il NUOVO data base dove mancano alcune voci ( tipi cognome, citta, stato) quindi c'e solo CALL e Nazione ...con uno vecchio dove ci sono TUTTI i campi ?
pare si possa fare tutto con CALC ? ma come faccio ?
grazie x aiuto, mi raccomando spiegatemi in modo semplice grazie
 
Ti elenco i passi da Excel, ma in Open sono praticamente gli stessi:
1) apri il FileA.cvs e salvalo con nome scegliendo il tipo file “Testo (con valori delimitati da tabulazioni)(*txt)”
2) sull’avviso che appare clicca SI per mantenere il formato
3) da File clicca su APRI, dal menù a tendina scegli tutti i file, clicca su FileA.txt
4) sull’avviso di file già aperto clicca SI
5) appare la maschera come quella da te postata. scegli Delimitato; Virgole o Tabulazioni; clicca Avanti
6) Scegli Virgola, clicca Avanti
7) Sul formato lascia Generale e clicca Fine, salvo che tu non voglia eliminare qualche colonna (salta) o trasformare un’eventuale formato data americano in uno italiano (data) utilizzando le opzioni solo sulla/sulle colonne interessate e poi Fine.
8) Avrai ora un file con i vari campi posti in colonna eventualmente da sormontare da un titolo di colonna.
9) Ripeti ora la procedura con l’altro file (FileB.cvs)
10) Scegli ora un campo che sia presente in tutte due i file e sia univoco. Potrebbe essere un cognome, un codice fiscale, un identificativo interno. Se il cognome non basta perché sono presenti Bianchi Paolo, ma anche Bianchi Bruno e Bianchi Renato devi unire 2 colonne affinché lo facciano diventare unico (per esempio nome e cognome, o cognome e data di nascita). Per fare questo inserisci una colonna vuota all’inizio del foglio e sulla prima riga (escluse le intestazioni e senza apici) scrivi “=B2&C2”, supposto che tu abbia scelto di usare il cognome in colonna B ed il nome in colonna C e ottenendo BIANCHIPAOLO. Copia la formula su tutta la colonna A e ripeti il procedimento sui File B.
11) Salva i 2 file in formato excel (o Office) rispondendo NO all’avviso.
12) Nel file nuovo, quello con meno dettagli (FileA.xlsx) in una colonna vuota scrivi nella prima riga (escluse le intestazioni e senza apici) “=CERCA.VERT(A2;”FileB.xlsx!$A$1.$N$1000;7;FALSO)”. I limiti del FileB (A1.N1000) sono ovviamente inventanti e saranno da adettare a seconda del numero di colonne e di righe del tuo file. Il numero 7 rappresenta invece il numero di colonna dove si trova il primo dato che ti interessa catturare perché non presente nel FileA. Supponendo che ti interessi la data di nascita e che questa si trovi nella colonna 8 (H) dovrai scrivere 8 nella formula al posto di 7. ATTENZIONE: anche nel FileB il dato univoco deve essere in 1^ colonna, ma anche in ordine crescente.
13) Ripeti questa formula per tante colonne quanti sono i dettagli che vuoi aggiungere, naturalmente variando opportunamente il numero della colonna che contiene il dettaglio che ti interessa.
14) copia le formule della prima riga dei punti 12 e 13 su tutte le righe del FileA
Buona giornata
 
grande sei un mitoooo !

ma quindi dvo convertitli entrambi in NORMALI file .txt ?

sicuro visto che e' un database di oltre 50.000 voci ..... il txt li gestisce ?
 
In realtà sei dentro a Excel e quindi non dovresti avere problemi dimensionali, ma ... provare non ti costa che 5 minuti.
Ciao.
 
Pubblicità
Pubblicità
Indietro
Top