Newsgroup: it.comp.lang.visual-basic
Titolo: Consiglio su importazione dati

Ciao a tutti, avrei bisogno di un consiglio. Devo realizzare un programma
che ha già incorporato dentro di se un database mdb vuoto con dei campi
prestabiliti (es. Nome, Cognome, Indirizzo, Città) e che dia la possibilità
all'utente di importare dei dati in questo database da un file txt o xls  in
fase di esecuzione.
La prima domanda è come poter realizzare questo e secondopoi come poter
associare i campi (o meglio le colonne) del file importato al mio database
mdb.
Vi ringrazio
Ciao
--
----|----|----|----|----|----|----|----|----|----|----|----|----|----|--
Vuoi vedere il mondo a 360°?
www.360net.it

Ciao!
1. access ha un metodo per importare/esportare dati (docmd.TransferText)
in diversi formati (txt, xls, csv...)
2. se crei un txt, nella prima riga metti il nome dei campi e nelle
successive i dati separati da una virgola (
p.es
). 
ciao
Marco wrote:


-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 mdb.
L'utente prima di inserire i dati nelle tabelle li deve analizzare ?
Se si dati in una griglia e successivamente con ADO li inserisci.
Per impostare la struttura origine dati un pò di analisi iniziale non fà
male , in quanto dovrebbe essere ripetitiva.
Per il file.txt sufficiente un carattere separatore campi
per xls la colonna
e come carichi una riga la inserisci nella o nelle tabelle.
giuseppeD

Forse mi sono spiegato male.
Il db vuoto con i campi nome cognome indirizzo città esiste già al momento
dell'apertura del programma. Quindi esiste già la struttura.
Questo db poi in fase di esecuzione del programma deve essere riempito
dall'utente che non deve inserire i dati a mano (si tratta di una grossa
quantità di dati) ma deve importarli da un file di testo o di excel.
Sia il primo che il secondo sono già formattati per essere importati da un
db però è possibile che il nome dei campi nei file da importare siano
diversi da quelli del db (esempio invece di nome c'è scritto name), quindi
l'utente deve associare i campi del file di testo a quelli del db.
In poche parole, non so se avete presente il form di Access che permette di
caricare i dati esterni, ecco io devo realizzare quello però nel mio
programma in vb.
P.S. io utilizzo ADO
Spero di essermi spiegato
Vi ringrazio ancora
Ciao

 ha scritto nel messaggio
news:zk1h9.111052$pX1.3...@news2.tin.it...
Speriamo di sintonizzarsi.
Campi tabella vuota
Nome  Cognome  Indirizzo  Città
-------------------------
File.txt
name;giovanni;bianchi;via limoni 123;roma
name;luigi;lello;via sirena 1;catanzaro
apri il file.txt
scorri le righe e con una istruzione SQL "INSERT INTO ......"
inserisci i valori della riga.
-----------------------------
File.xls
ad oggi ,per me, solo occasioni inverse , cioè dal db ad Excel
Apri il file.xls , che deve avere format unico per tutti gli invii,
altrimenti istruzioni precise a chi invia il file.
  A             B           C                 D
giovanni bianchi  via limoni 123  roma
leggi la prima riga e con una istruzione SQL "INSERT INTO ......"
inserisci i valori della riga nella tabella.
Leggi la seconda riga ..........
giuseppeD

 Leggi la seconda riga ..........
Occorre aprire lo sheet e leggere i valori delle celle interessate.
In riferimenti seleziona la libreria Excel
    Dim objExcel As Excel.Application
    Dim objWorkBook As Excel.Workbook
    Dim objWorkSheet As Excel.Worksheet
        Set objExcel = CreateObject("Excel.application")
       objExcel.Workbooks.Open ("Percorso\File.xls") 'Apre il file.xls
    Set objWorkBook = objExcel.ActiveWorkbook
    Set objWorkSheet = objWorkBook.Worksheets(1)
    'qui leggi i valori nelle celle interessate e li
 'inserisci con una istruzione SQL
 '"INSERT INTO ......" nei campi della tabella
 'chiudi e liberi la memoria
     objExcel.Quit
    Set objExcel = Nothing
    Set objExcel = Nothing
giuseppeD