What is the fastest way of exporting data from C# indexer to excel?
Exporting cell values using for loop as below, is too slow.
Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
var ws = (Worksheet)wb.Worksheets[1];
for (int y = 0; y < Y; y++)
{
for (int x = 0; x < X; x++)
{
ws.Cells[y + 1, x + 1].Value2 = (double)Pixels[y, x];
}
}
In above code, Pixels[y,x] is an indexer.
Exporting it to a range as in @Pilgerstorfer Franz answer Writing a large 2d array to Excel is faster.
I couldn't convert indexer to array (2d array or jagged array) or make below work with indexer.
var writeRange = ws.Range[startCell, endCell];
writeRange.Value = myArray;