C# модификация файлов Excel, сохраняя стиль

У меня есть файл Excel, который работает как шаблон для данных, которые будут сгенерированы. Мне нужно изменить этот лист Excel, продублировать его несколько раз и добавить в него данные.

Я попытался использовать Excellibrary из Nuget следующим образом:

Workbook tmpl = Workbook.Load("template.xlt");
tmpl.Save("newFile.xls");

Как видите, я ничего не делаю: просто открываю файл Excel и сохраняю его под другим именем. Проблема в том, что весь контент находится внутри целевого xls, но все стили отсутствуют (размеры шрифтов, цвета и т. Д.)

Использование файла XLS вместо xlt при загрузке ничего не меняет.

Есть ли способ решить ту или иную библиотеку, которая работает лучше?

3 ответа

Решение

Я бы порекомендовал использовать OpenXML SDK от Microsoft. Это позволяет вам делать что угодно с более новыми файлами xlsx (Excel 2007 и выше), используя C#.

OpenXML SDK для Office

Я предлагаю вам попробовать NPOI, этот дает вам возможность обслуживать структуру Храма. у меня была проблема с редактированием шаблона, я решил спеть это. это может помочь вам

Для получения дополнительной информации об этом вы можете просмотреть Создать файл Excel

Еще одна библиотека, которую вы можете попробовать - это ClosedXML, по моему опыту, она позволяет очень легко манипулировать документами Excel.

Другие вопросы по тегам