Comment créer un fichier Excel (.XLS et .XLSX) en C# sans installer Microsoft Office ?
Source : Stack Overflow [.net]
Comment créer un fichier Excel (.XLS et .XLSX) en C# sans installer Microsoft Office ?
Source : Stack Overflow [.net]
Vous pouvez utiliser une bibliothèque appelée ExcelLibrary. C’est une bibliothèque gratuite et open source publiée sur Google Code :
Cela semble être un portage du PHP ExcelWriter que vous avez mentionné ci-dessus. Elle n’écrira pas encore au nouveau format .xlsx, mais ils travaillent à l’ajout de cette fonctionnalité.
C’est très simple, petit et facile à utiliser. De plus, elle dispose d’un DataSetHelper qui vous permet d’utiliser des DataSets et DataTables pour travailler facilement avec les données Excel.
ExcelLibrary semble toujours ne fonctionner que pour l’ancien format Excel (fichiers .xls), mais pourrait ajouter la prise en charge des formats plus récents 2007/2010 à l’avenir.
Vous pouvez également utiliser EPPlus, qui ne fonctionne que pour les fichiers au format Excel 2007/2010 (fichiers .xlsx). Il y a aussi NPOI qui fonctionne avec les deux.
Il existe quelques bogues connus avec chaque bibliothèque, comme indiqué dans les commentaires. Dans l’ensemble, EPPlus semble être le meilleur choix au fil du temps. Il semble être plus activement mis à jour et documenté également.
De plus, comme l’a noté @ArtiomTsarionov ci-dessous, EPPlus prend en charge les tableaux croisés dynamiques et ExcelLibrary pourrait avoir un certain support (Pivot table issue in ExcelLibrary)
Voici quelques liens pour référence rapide :
EPPlus - GNU (LGPL) - Plus maintenu
EPPlus 5 - Polyform Noncommercial - A partir de mai 2020
Voici un exemple de code pour ExcelLibrary :
Voici un exemple qui prend des données d’une base de données et crée un classeur à partir de celles-ci. Notez que le code ExcelLibrary est la seule ligne en bas :
//C
*(Réponse tronquée)*