I am trying to save a DataTable into an excel sheet.. my code is like this..
Excel.Range range = xlWorkSheet.get_Range("A2");
range = range.get_Resize(dtExcel.Rows.Count, dtExcel.Columns.Count);
object[,] rng1 = new object[dtExcel.Rows.Count, dtExcel.Columns.Count];
Excel range requires range value as array[,] but I have the DataTable as jagged array[][].
object[][] rng2 = dtExcel.AsEnumerable().Select(x => x.ItemArray).ToArray();
Is there any built-in function to directly convert the jagged array[][] to a 2D array[][] ?
Iterating through Excel, DataTable and assigning seems slower with bulk data..
Also I don’t want to setup querying with DSN for excel.. I chose excel storage to avoid the configuring of any databases.. 😛
I found a detailed explanation of ways of writing data to excel here..
http://support.microsoft.com/kb/306023
At last I used NPOI library for this. It is quite simple and free.
The code to convert DataTable to excel as follows.