2011-12-12

Read excel to dataset

This sample show how to read data from excel file by using Microsoft.Jet.OLEDB.

More information about excel connectionstring see http://www.connectionstrings.com/excel

Let's sample code.

Private Function ReadExcelFile(ByVal filePath As String, ByVal fileName As String) As DataSet
'' Excel 2003
Dim sConn As String = String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0}", filePath + fileName)
sConn += ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1;"""

'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";

Dim sSql As String = "SELECT * FROM [Sheet1$]"
'Select excel range command
' Dim sSql As String = "SELECT * FROM [Sheet1$A1:D3]"

Dim pFile As New FileInfo(fileName)
If (pFile.Extension.ToLower() = ".xlsx") Then
' Excel 2007
sConn = String.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}", filePath + fileName)
sConn += ";Extended Properties=""Excel 12.0 Xml;HDR=YES;"""
End If


Dim ds As New DataSet
Dim pConn As New OleDbConnection(sConn)
Try
pConn.Open()
Dim pCmd As New OleDbCommand()
pCmd.Connection = pConn
pCmd.CommandText = sSql

Dim pAdp As New OleDbDataAdapter()
pAdp.SelectCommand = pCmd

pAdp.Fill(ds)
Catch ex As Exception
Return Nothing
Finally
pConn.Close()
End Try

Return ds
End Function

Note
If found error Could not find installable ISAM that mean your connectionstring was wrong.


20 comments:

  1. Excellent post! I think you've encapsulated the mission of this blog and our challenge.

    ReplyDelete
  2. Outstanding story there. What occurred after? Thanks!
    Also visit my website : C#

    ReplyDelete
  3. Keep on working, great job!
    Feel free to visit my site ; penalista napoli

    ReplyDelete
  4. Usually I do not learn post on blogs, however I wish to say that this write-up very pressured me to try and do so!

    ReplyDelete
  5. I'm impressed, I have to admit. Rarely do I come across a blog that's both equally educative and interesting, and let me tell you, you have hit
    the nail on the head. The issue is something that not enough people are speaking intelligently about.
    I am very happy I came across this during my hunt for something relating to this.
    Feel free to visit my page ... scripting languages

    ReplyDelete
  6. I may certainly not have the ability to keep every details with regard to a while after bring all of this in.

    ReplyDelete
  7. long time no see kevin i got it from a friend so this is there web address
    and some info , there there most competitive in the game , mention mrs nolsfod give out there number

    ReplyDelete

  8. I am searching for things to improve my website! I assume its ok to use some of the ideas!

    ReplyDelete
  9. Excellent goods from you, man. I have understand your stuff previous to and you are just extremely magnificent.
    I really like what you have acquired here, certainly like what
    you're stating and the way in which you say it. You make it enjoyable and you still care for to keep it wise. I can't wait to read much more from you.
    This is actually a wonderful website.
    My webpage email Address lists

    ReplyDelete

  10. If possible, as you gain expertise, would you mind updating your web page with more details?

    ReplyDelete
  11. Thank you for another great article. The place else could anyone get
    that type of information in such an ideal method of writing?

    I have a presentation subsequent week, and I am on the look for such information.
    Stop by my webpage Asset Management Software

    ReplyDelete

  12. I've saved it within my google bookmarks.

    ReplyDelete
  13. This sample show how to read data from excel file by using Microsoft.Jet.OLEDB.Thanks for sharing it.

    .net Programmer

    ReplyDelete
  14. What's Taking place i am new to this, I stumbled upon this I've found It absolutely
    helpful and it has aided me out loads. I'm hoping to give a contribution & aid other users like its aided me. Good job.
    Feel free to surf my webpage :: Costume idea

    ReplyDelete
  15. I believe what you posted was actually very logical.
    But, think on this, suppose you were to create a awesome post title?
    I ain't suggesting your content is not good, but suppose you added a post title that makes people desire more? I mean "Read excel to dataset" is kinda plain. You might glance at Yahoo's home page and see how they create article titles to
    get viewers interested. You might add a video or
    a picture or two to get readers excited about what you've written. Just my opinion, it could bring your posts a little bit more interesting.

    my web page; www.sra411.com

    ReplyDelete
  16. Good day very cool web site!! Man .. Beautiful .. Wonderful .
    . I will bookmark your website and take the feeds additionally?
    I am happy to search out a lot of useful information here within the post,
    we want work out extra strategies in this
    regard, thanks for sharing. . . . . .

    My web page :: http://www.goldenrat.com/an-introduction-to-essential-factors-of-modcloth-coupon/

    ReplyDelete
  17. Howdy, i read your blog occasionally and i own a similar one and i was just curious if you get a lot of spam comments?
    If so how do you reduce it, any plugin or anything you can
    advise? I get so much lately it's driving me crazy so any help is very much appreciated.

    Review my homepage ... Modcloth Coupon

    ReplyDelete
  18. This information is worth everyone's attention. How can I find out more?

    Also visit my website :: http://code6studio.com/?P=6

    ReplyDelete
  19. Pretty section of content. I just stumbled upon your website and in
    accession capital to assert that I acquire in fact enjoyed account your
    blog posts. Any way I'll be subscribing to your augment and even I achievement you access consistently quickly.

    My web blog :: Connor

    ReplyDelete
  20. nice information. Satta Matka Very informative post for me as I am always looking for new content that can help me and my knowledge grow better. Satta Matka

    ReplyDelete

Thanks for your comment.