Carga de Hoja de Excel

12/01/2006 - 18:51 por Enrique Rodríguez | Informe spam
Tengo una duda a ver si alguien me puede ayudar.

oCmd.CommandText = "SELECT * FROM [Hoja1$]"
Con esta parte del codigo se hace el select de una hoja de excel para poder
ser cargada en un grid por ejemplo.

La pregunta es:
¿Y si en lugar de Hoja1 es otro nombre?, es decir yo no se el nombre de la
hoja, lo unico que tengo claro es que el nombre de la hoja lo adquiere del
nombre del archivo, asi que si por ejemplo el archivo se llama "test.xls" el
nombre de la hoja por lo tanto se llama "test".

Pego parte del codigo que utilizo.

Private Sub cmdCargarGrid_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles cmdCargarGrid.Click

'Declaracion de variables y objetos

Dim Destino As String = Server.MapPath(System.DBNull.Value.ToString()) &
"\Conteos\Excel\OBSERVATORIO\" & Path.GetFileName(File1.PostedFile.FileName)

Dim strConnSql As String = "Server=Enrique-rdz;initial
catalog=Sintram;Password=safeuser;User ID=safeuser;"

Dim oConn As New OleDbConnection

Dim oCmd As New OleDbCommand

Dim oDa As New OleDbDataAdapter

Dim oDs As New DataSet

'Dim com As New SqlCommand("insert_CObs", oConnSql)

File1.PostedFile.SaveAs(Destino)

oConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _

Destino & ";Extended Properties=""Excel 8.0;HDR=No;IMEX=2"""

'"HDR=Yes;" indicates that the first row contains columnnames, not data

'"IMEX=1;" tells the driver to always read "intermixed" data columns as text

oConn.Open()

oCmd.CommandText = "SELECT F1 As Campo1, F2 As Campo2, F3 As Campo3 FROM
[cts01-cc1026$]"

oCmd.Connection = oConn

oDa.SelectCommand = oCmd

oDa.Fill(oDs)

DataGrid1.DataSource = oDs.Tables(0).DefaultView

DataGrid1.DataBind()

oConn.Close()

End Sub
 

Preguntas similares