Это довольно уродливо, но это работает - запишите содержимое вашего массива в двумерный массив и выведите его на рабочий лист:
var arrayList = new ArrayList();
arrayList.Add("Alpha");
arrayList.Add("Bravo");
arrayList.Add("Charlie");
var excel = Globals.ThisAddIn.Application;
var worksheet = (Worksheet)excel.ActiveSheet;
var array = new object[1, 3];
for (var i = 0; i < 3; i++)
{
array[0, i] = arrayList[i];
}
var firstCell = worksheet.Cells[1, 1];
var lastCell = worksheet.Cells[1, 3];
var range = worksheet.Range[firstCell, lastCell];
range.Value2 = array;
В качестве альтернативы, если ваш список достаточно мал, вы можете просто перебрать свой список массивов и записать содержимое ячейка за ячейкой:
var row = 1;
foreach (var value in arrayList)
{
var cell = (Range)worksheet.Cells[row, 1];
cell.Value2 = value;
row++;
}