Home |
Search |
Today's Posts |
|
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Reading Excel 2007 Rows in C# / .Net
I am trying to read an Excel spreadsheet row by row and transform the data in
each row into my own business object. I am trying to figure out the "best practice" for doing this in C# / .NET 3.5 (VS2008). I have tried the following: 1. Using an OleDbConnection to "SELECT FROM" my particular worksheet into a DataTable. Then I must iterate over the DataTable and pull the data I want from each DataRow. Actually this seems to be the most straightforward from a coding perspective. 2. I found this example to read a particular cell from a worksheet using an XmlDocument: http://msdn.microsoft.com/en-us/library/bb332058.aspx. This seems to have A LOT of code behind it just to read one cell. And I am unsure how to modify this code to iterate over the worksheet one row at a time. 3. Using Interop. I had an example using Interop to open the document and read a worksheet. Then I found I had to read a range on a per column basis into an array, and then I had to transform the data in the array into what I was looking for. This also seems very cumbersome. Also, I had a working example for an Excel 2003 spreadsheet, but when I tried to use the same code to open an Excel 2007 spreadsheet, I got an "out of memory" error when just opening the file. I'm not sure if I have some parameter not set correctly in this case. I am not sure if this is the correct forum to ask this question as this may be more for the mechanics of using Excel rather than trying to read the file programmatically. It seemed that using the OleDbConnection was not the preferred method any more, but it seems to be the most straightforward for my needs. Just wondering if anyone had any thoughts on this. Thanks, Beth |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Reading Excel 2007 Rows in C# / .Net
On Mon, 9 Mar 2009 16:39:01 -0700, BethH
wrote: I am trying to read an Excel spreadsheet row by row and transform the data in each row into my own business object. I am trying to figure out the "best practice" for doing this in C# / .NET 3.5 (VS2008). I have tried the following: 1. Using an OleDbConnection to "SELECT FROM" my particular worksheet into a DataTable. Then I must iterate over the DataTable and pull the data I want from each DataRow. Actually this seems to be the most straightforward from a coding perspective. 2. I found this example to read a particular cell from a worksheet using an XmlDocument: http://msdn.microsoft.com/en-us/library/bb332058.aspx. This seems to have A LOT of code behind it just to read one cell. And I am unsure how to modify this code to iterate over the worksheet one row at a time. 3. Using Interop. I had an example using Interop to open the document and read a worksheet. Then I found I had to read a range on a per column basis into an array, and then I had to transform the data in the array into what I was looking for. This also seems very cumbersome. Also, I had a working example for an Excel 2003 spreadsheet, but when I tried to use the same code to open an Excel 2007 spreadsheet, I got an "out of memory" error when just opening the file. I'm not sure if I have some parameter not set correctly in this case. I am not sure if this is the correct forum to ask this question as this may be more for the mechanics of using Excel rather than trying to read the file programmatically. It seemed that using the OleDbConnection was not the preferred method any more, but it seems to be the most straightforward for my needs. Just wondering if anyone had any thoughts on this. Thanks, Beth Not every expert using Excel is also an expert using C# / .NET I suggest you ask your question in a C# / .NET forum. -- Chuck |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Reading and writing to ini files in Excel 2007 | Excel Programming | |||
EXCEL 2007 reading E as power of ten | Excel Discussion (Misc queries) | |||
Excel: reading tables with multiple rows and columns | Excel Programming | |||
IE automation, Frames content reading problem, excel 2003 and 2007 | Excel Programming | |||
Stop Excel reading 01/02 as 1st February 2007 | Excel Discussion (Misc queries) |