Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在C中将arraylist填充到excel(VSTO)#_C#_Excel_Vsto - Fatal编程技术网

C# 如何在C中将arraylist填充到excel(VSTO)#

C# 如何在C中将arraylist填充到excel(VSTO)#,c#,excel,vsto,C#,Excel,Vsto,我有一个由值组成的arraylist(数组列表),我想在excel工作表中填充这个arraylist(数组列表) 此外,在arraylist(array_列表)中还有一些值,我不会在excel工作表中填充这些值。 我将使用VSTO从c#调用excel工作表 如何完成上述操作。这很难看,但它可以工作-将arraylist内容写入二维数组,并将其转储到工作表中: var arrayList = new ArrayList(); arrayList.Add("Alpha"); arrayList.Ad

我有一个由值组成的arraylist(数组列表),我想在excel工作表中填充这个arraylist(数组列表)

此外,在arraylist(array_列表)中还有一些值,我不会在excel工作表中填充这些值。 我将使用VSTO从c#调用excel工作表


如何完成上述操作。

这很难看,但它可以工作-将arraylist内容写入二维数组,并将其转储到工作表中:

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;

当你说在excel中填充arraylist时,你的意思是你只想在电子表格中写入数组的值吗?是的,事实上,我想要电子表格中数组列表的所有值感谢Mathias,我遵循了你的第二种方法,但仍然比你的更丑陋,我有数组集合中的一些值为空,而这在放进牢房时造成了麻烦。必须迭代每个列的值。
var row = 1;
foreach (var value in arrayList)
{
   var cell = (Range)worksheet.Cells[row, 1];
   cell.Value2 = value;
   row++;
}