Как в цикле записывать в ячейки?

Я пытаюсь в цикле записать в разные ячейки, как работа с массивом в цикле, только Excel. Но записывается только 1 раз, хотя цикл идет.

for(int i = 0;i<10;i++)
{
 string file = @"C:\Users\Альфа\Desktop\Св.xls";

    Workbook workbook = new Workbook();
    Worksheet worksheet = new Worksheet("Первый Лист");
    worksheet.Cells[i, 1] = new Cell(name);
    worksheet.Cells[i, 2] = new Cell(name_c);
    worksheet.Cells[i, 3] = new Cell(value);
    workbook.Worksheets.Add(worksheet);
    workbook.Save(file);
}

По разному пробовал, не записывается никак множество значений. Мне кажется, я не те методы использую. Подскажите, какие всё таки нужно?


Ответы (1 шт):

Автор решения: tym32167

Вы на каждой итерации создаете Workbook и пишете его в один и тот же файл. То есть, вот у вас 10 итераций - вы 10 раз записываете в один и тот же файл Workbook с одним листом.

Попробуйте так:

string file = @"C:\Users\Альфа\Desktop\Св.xls";
Workbook workbook = new Workbook();
Worksheet worksheet = new Worksheet("Первый Лист");

for(int i = 0;i<10;i++)
{ 
    worksheet.Cells[i, 1] = new Cell(name);
    worksheet.Cells[i, 2] = new Cell(name_c);
    worksheet.Cells[i, 3] = new Cell(value);    
}

workbook.Worksheets.Add(worksheet);
workbook.Save(file);
→ Ссылка