Recuperare i fogli contenuti in un file Excel tramite OleDB
Utilizzando OleDB è possibile ricavare dati da una fonte dati Excel.
E’, inoltre possibile, ricavare preventivamente i fogli contenuti all’interno del file stesso.
I fogli sono, a tutti gli effetti, delle tabelle e, quindi è possibile utilizzare il metodo GetOleDbSchemaTable() della classe OleDbConnection il quale fornisce una tabella al cui interno troviamo un record per ogni foglio presente nel file excel.
Il seguente pezzo di codice recupera, appunto, la tabella precedente:
Dim conn As OleDbConnection = New OleDbConnection
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\prova.xls;Extended Properties=Excel 8.0;"
conn.Open()
If conn.State = ConnectionState.Open Then
Dim schemaTables As DataTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, New Object() {Nothing, Nothing, Nothing, "TABLE"})
End If
Ogni record della tabella risultato ha i seguenti campi:
TABLE_CATALOG : nel caso di un file excel assume il valore DBNULL;
TABLE_SCHEMA : nel caso di un file excel assume il valore DBNULL;
TABLE_NAME : nome del foglio seguito dal carattere $;
TABLE_TYPE : : nel caso di un file excel assume il valore “TABLE”;
DESCRIPTION : nel caso di un file excel assume il valore DBNULL;
TABLE_PROPID : nel caso di un file excel assume il valore DBNULL;
DATE_CREATED : data di creazione del foglio
DATE_MODIFIED : data dell’ultima modifica del foglio
Nessun commento:
Posta un commento