Yes this is possible, there are multiple options:
- generate a fods document - the simplicity of this, is that this is a single xml file so you do not require any zipping. LibreOffice will open it directly, for Apache OpenOffice you need to 'install' a filter
- generate an ods - this is the standard OpenDocument file which is a zipped file containing multiple xml files
- generate an xslx - this is the standard for Excel but also opens nicely with LibreOffice - this is a zipped file containing multiple xml files
Have implemented #1 and #3, cannot share any code, sorry.
Easiest way to get started (imho) is to save a very simple sheet and strip out anything that looks like default noise and then either use the sax-writer or nicely modelled prodatasets to create your xml.
Beware when zipping with .Net classes - there is a bug (solved in 4.6 or so) which creates zip files with backslashes instead of forward slashes.