Нужно записать данные в таблицу ексель. Делаю вот так:
Excel.Application exApp = new Excel.Application();
exApp.Visible = true;
exApp.Workbooks.Add();
Worksheet workSheet = (Worksheet)exApp.ActiveSheet;
workSheet.Cells[1, 1] = "№";
workSheet.Cells[1, 2] = "Имя студента";
workSheet.Cells[1, 3] = "Группа";
workSheet.Cells[1, 4] = "Средний балл";
int rowExcel = 2;
for (int i = 0; i < NGrants; i++)
{
workSheet.Cells[rowExcel, "A"] = dgv.Rows[i].Cells[0].Value;
workSheet.Cells[rowExcel, "B"] = dgv.Rows[i].Cells[1].Value;
workSheet.Cells[rowExcel, "C"] = dgv.Rows[i].Cells[2].Value;
workSheet.Cells[rowExcel, "D"] = dgv.Rows[i].Cells[4].Value;
++rowExcel;
}
workSheet.SaveAs("MyFile.xls");`
На моем компьютере все работает, но на компьютере заказчика выдает unhandled exception, даже не запускает ексель. Что это? Что-то с версиями екселя связано? И как можно "малой кровью" исправить, чтоб для любой версии работало?
При создании Excel.Application() обворачиваем вызов через try...catch и выводим текст ошибки.
А для кроссплатформенности лучше писать данные не в XLS, а в CSV формат, определив разделители (например, ";") и добавить первой строкой в CSV текст "sep=;"
CSV файл откроется чем угодно, включая блокнот, это обычный текстовик. В Excel же откроется как таблица.
Как пример файла:
sep=;
a;b;vc;d;edf
d;e;f;dfg;h
v;f;dft;g;j
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хочу отправить запрос, на создание поста в группе вк, вчера буквально работал, сейчас выдает 400 bad requestСамое главное, что если вывожу переменную...