Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 1.0/1.1
Problema con Numeri excel
martedì 07 novembre 2006 - 10.42
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mokup
Profilo
| Newbie
4
messaggi | Data Invio:
mar 7 nov 2006 - 10:42
Ciao ragazzi.
Il mio problema è il seguente:
Devo leggere i dati da una tabella in un foglio excel, il fatto è che in una colonna dove ho ad esempio i valori 1,5 - 4x2 - 6 mi legge il secondo valore correttamente mentre gli altri risultano nulli.
Quando leggo i dati riempio un datatable con il seguente codice:
while(r.Read())
{
DataRow dr=dt.NewRow();
for(int i=0;i<maxr;i++)
{
dr[i]=(!r.IsDBNull(i))?r.GetValue(i):"";
//Console.WriteLine(dr[i].ToString());
}
dt.Rows.Add(dr);
}
Ho provato anche a cambiare il formato delle celle, li ho provati tutti, generale, numero, testo, ecc. Ma non cambia niente.
dove r è un oggetto OleDbDataReader.
Spero che qualcuno mi possa aiutare, grazie
micto27
Profilo
| Senior Member
385
messaggi | Data Invio:
mar 7 nov 2006 - 16:13
>Ciao ragazzi.
>Il mio problema è il seguente:
>Devo leggere i dati da una tabella in un foglio excel, il fatto
>è che in una colonna dove ho ad esempio i valori 1,5 - 4x2 -
>6 mi legge il secondo valore correttamente mentre gli altri
>risultano nulli.
>Quando leggo i dati riempio un datatable con il seguente codice:
>
>while(r.Read())
>{
> DataRow dr=dt.NewRow();
> for(int i=0;i<maxr;i++)
> {
> dr[i]=(!r.IsDBNull(i))?r.GetValue(i):"";
> //Console.WriteLine(dr[i].ToString());
> }
> dt.Rows.Add(dr);
>}
>
>Ho provato anche a cambiare il formato delle celle, li ho provati
>tutti, generale, numero, testo, ecc. Ma non cambia niente.
>
>dove r è un oggetto OleDbDataReader.
>Spero che qualcuno mi possa aiutare, grazie
Secondo me la prima riga del foglio excel viene considerata come testata della tabella
e il contenuto delle celle di tale riga viene interpretato come Nome della colonna.
Puoi provare ad inserire una prima riga nel foglio excel contenente i nomi colonna per verificare se è come
ho ipotizzato?
Ciao, Michele
mokup
Profilo
| Newbie
4
messaggi | Data Invio:
mar 7 nov 2006 - 16:21
Ti ringrazio per la risposta. In realtà però il problema è di un altro tipo.
Nel tentativo di leggere i dati, il provider Microsoft.Jet.OLEDB.4.0 effettua una campionatura sui dati da prendere ed in base a questa campionatura decide il tipo di dato della colonna.
La cosa strana e che se il tipo di di una colonna è String ed una cella di questa colonna è un numero mi restituisce null.
In effetti se metto su tutta la colonna dei numeri il tipo di dato risulterà Double e tutto funziona correttamente.
Quindi il problema si verifica quando fanno parte di questa colonna stringhe e numeri.
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !