使用 EPPLUS 在 for 循环中写入单元格会导致重复值
Write to Cells in a for-loop with EPPLUS result in duplicate values
我不明白为什么下面的代码把 2,2,2 写成 Excel 而它应该是 0,1,2。代码很简单——创建一个 ExcelPackage,添加一个 Worksheet,然后迭代一个循环以将值写入单元格。
using (ExcelPackage p = new ExcelPackage())
{
p.Workbook.Worksheets.Add("Foo");
for (int j = 0; j < 3; j++)
p.Workbook.Worksheets["Foo"].Cells[1, 1, 1, 1 + j].Value = j;
p.SaveAs(new FileInfo(@"C:\FooFolder\Foo.xlsx"));
}
您在一个范围而不是一个唯一的单元格中书写。使用 Cells[1, 1, 1, 1 + j]
时,您正在从单元格 1,1 到单元格 1,1+j 进行书写:完整范围采用分配的值。
改用Cells[1, j, 1, 1 + j]
我不明白为什么下面的代码把 2,2,2 写成 Excel 而它应该是 0,1,2。代码很简单——创建一个 ExcelPackage,添加一个 Worksheet,然后迭代一个循环以将值写入单元格。
using (ExcelPackage p = new ExcelPackage())
{
p.Workbook.Worksheets.Add("Foo");
for (int j = 0; j < 3; j++)
p.Workbook.Worksheets["Foo"].Cells[1, 1, 1, 1 + j].Value = j;
p.SaveAs(new FileInfo(@"C:\FooFolder\Foo.xlsx"));
}
您在一个范围而不是一个唯一的单元格中书写。使用 Cells[1, 1, 1, 1 + j]
时,您正在从单元格 1,1 到单元格 1,1+j 进行书写:完整范围采用分配的值。
改用Cells[1, j, 1, 1 + j]