Hvordan kan jeg oprette et Excel-regneark med C# uden at Excel skal være installeret på den maskine, der kører koden?


Hvordan kan jeg oprette en Excel-fil (.XLS og .XLSX) i C# uden at installere Microsoft Office?
==============================================================================================


En ekstremt let løsning kan være at bruge HTML-tabeller. Du skal blot oprette head-, body- og table-tags i en fil og gemme den som en fil med en .xls-udvidelse. Der er Microsoft-specifikke attributter, som du kan bruge til at style output, herunder formler.


Jeg er klar over, at du måske ikke koder dette i en webapplikation, men her er et [eksempel](http://jasonhaley.com/blog/archive/2004/03/20/9583.aspx) på sammensætning af en Excel-fil via en HTML-tabelle. Denne teknik kunne bruges, hvis du kodede en konsol-app, en desktop-app eller en tjeneste.


Du bør faktisk tjekke [interop classes](https://msdn.microsoft.com/en-us/library/ms173186(VS.80).aspx). Du siger, at der ikke er tale om OLE (hvilket dette ikke er), men interop-klasserne er meget nemme at bruge.


Du vil måske blive imponeret, hvis du ikke har prøvet dem.


Vær venligst advaret om Microsoft's [holdning](https://support.microsoft.com/en-in/help/257757/considerations-for-server-side-automation-of-office) til dette:



> 
> Microsoft anbefaler ikke i øjeblikket, og understøtter ikke,
> Automatisering af Microsoft Office-programmer fra enhver uovervåget,
> ikke-interaktive klientprogrammer eller komponenter (herunder ASP,
> ASP.NET, DCOM og NT Services), fordi Office kan udvise ustabile
> opførsel og/eller blokering, når Office køres i dette miljø.
> 
> 
> 


[IKVM](http://www.ikvm.net/) + [POI](https://poi.apache.org/)


Eller du kan bruge Interop ...

