Amigo, você pode utilizar HTML e CSS para exibir o relatório, e para exportar arquivos para o Office a biblioteca OpenXML. Nela, você consegue personalizar seus arquivos, fazendo a persistência com DataTable, DataSet, Listas e etc.
Um exemplo de como criar um exportador para excel:
http://www.codeproject.com/Articles/371203/Creating-basic-Excel-workbook-with-Open-XML