views:

36

answers:

2

Is it possible to import excel data to display using C# in any view(data grid etc ..) while retaining formatting like Bold, italic and strikethrough, throughout the document. I am making a windows form application. My data is in an excel sheet , i want to display it in grid view or any other while retaining the formatting. PLZ help.

A: 

Well, there are some ways that I can think of but neither of them are very pretty at all and they would not be very effecient.

1) Parse the excel file cell by cell using Excel Interop. (Very nasty)

2) If you can convert the excel file to Excel XML you could then write say a XSLT to parse the file to pull styling data much more quickly.

Of course getting the styling data out is one thing. Applying it can be a whole other experience. Once you get the styling you have to make sure you apply the values to all the correct columns. Again very nasty and alot of parsing.

However since you did not say whether this was a web or desktop app you could always just embedd an excel control (on the web side) to display the data which may solve your problem. On a desktop app you are probably in for a world of pain trying to do what I describe above.

Maybe somebody will have a better answer but that's what I got.

Joshua Cauble
A: 

SpreadsheetGear for .NET can load Excel workbooks and provides access to formatted text values as well as cell formatting such as fonts and colors.

SpreadsheetGear also comes with a Windows Forms spreadsheet control which will allow users to display, edit, format, calculate, print, etc... workbooks with formatting, charts, etc... intact.

If you are building an ASP.NET application, you can use SpreadsheetGear to open a workbook and generate an image of cells and / or charts as shown on our "Excel Chart and Range Imaging Samples" page here

You can download the free trial here if you want to try it out.

Disclaimer: I own SpreadsheetGear LLC

Joe Erickson