VB.net read Excel 2007 and later

Murray Brown
Murray Brown used Ask the Experts™
on
Hi

I am using the following VB.net code in my ASP.net web app to read an Excel 97 to 2003 .xls file. I want it to work with
2007 and later rather. What do I change?
Thanks


    Protected Function ExcelConnection() As OleDbCommand
        Try

            ' Connect to the Excel Spreadsheet
            'Dim xConnStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            '"Data Source=" & Server.MapPath("~/ExcelImport.xls") & ";" & _
            '"Extended Properties=Excel 8.0;"

            Dim sMinAndSecond As String = Me.Second_Minute_of_Upload.Text 'workaround to stop file locking on the same name


            Dim xConnStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=" & Server.MapPath("~/Temp/ExcelImport" & sMinAndSecond & ".xlsx") & ";" & _
            "Extended Properties=""Excel 8.0;HDR=YES;IMEX=1"""


            ' create your excel connection object using the connection string
            Dim objXConn As New OleDbConnection(xConnStr)
            objXConn.Open()

            ' use a SQL Select command to retrieve the data from the Excel Spreadsheet
            ' the "table name" is the name of the worksheet within the spreadsheet
            ' in this case, the worksheet name is "Members" and is expressed as: [Members$]
            Dim objCommand As New OleDbCommand("SELECT * FROM [Sheet1$]", objXConn)
            Return objCommand
        Catch ex As Exception
            Response.Write("There was an error connecting to the Excel spreadsheet! " & Err.Description & " xk6")
        End Try

    End Function

Open in new window

Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Top Expert 2016
Commented:
HI,

pls try

            Dim xConnStr As String = "Provider=Microsoft.Jet.OLEDB.12.0;" & _
            "Data Source=" & Server.MapPath("~/Temp/ExcelImport" & sMinAndSecond & ".xlsx") & ";" & _
            "Extended Properties=""Excel 12.0 Xml;HDR=YES;IMEX=1"""

Open in new window

Regards
Murray BrownASP.net/VSTO Developer

Author

Commented:
Thanks very much

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial