Oggi al lavoro ci ho sbattuto la testa per un paio d'ore senza risultato![]()
Vi descrivo le mie sfighe.
Devo leggere dei dati da un foglio excel e poi buttarli in una tabella di SQLServer e fin qui tutto bene:
faccio la mia connessione (Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & PathNomeFile & ";Extended Properties=""Excel ", faccio la mia query di estrazione dei dati, butto tutto in un recordset e inserisco riga x riga in tabella. FIN QUI NO PROBLEMA
QUANDO A UN CERTO PUNTO..
..mi accorgo che il mio file Excel ha 200 righe in più della mia tabella![]()
La mia attenzione si ferma sulla colonna ISBN che contiene i codici del mio insieme di libri. La maggiorparte sono numerici mentre alcuni contengono una X in fondo.
Ebbene quelli con la X in fondo vengono visti da ASP come vuoti...
QUINDI COMINCIANO I MIEI DISPERATI TENTATIVI:
- che sia un problema di formattazione dei dati del mio foglio excel? NO, anche se metto il formato testo nella colonna EXCEL ASP se ne fotte
sintesi delle mie ricerche su google: praticamente cosa fa OLEDB? Esamina tutta la colonna (o secondi alcuni i primi 8 campi) guardando che tipo di dati contiene: fa una media e stabilisce il tipo di dato (nel mio caso numerico per cui ignora i testuali!)
SOLUZIONI PROPOSTE:
[list=1]usare hdr=yes;IMEX=1 nella stringa di connessione => Ad ASP pare non piaccia
cambiare la chiave di registro che indica su quanti valori calcolare la media => non funge
soluzione alternativa: se con una macro inserisco un carattere qualunque davanti a tutti i dati della mia famigerata colonna ASP riconosce tutti i dati come testo ho provato e funziona tutto! E allora posso fare anche lo stesso con ASP no? QUI si smorza definitivamente il mio entusiasmo: quando faccio CreateObject("Excel.Application") per andare a scrivere su Excel ASP mi dice che l'ActiveX non riesce a creare l'oggetto...[/list=1]
E QUI ALZO BANDIERA BIANCA...
QUALCUNO SA AIUTARMI?![]()
Se non riesco entro domani sono fottuto..

Rispondi quotando
