in reply to EXCEL question

Spreadsheet::WriteExcel is a very powerful module. I have used it in the past to submit thousands of circuit change requests from one Telco to another when they insisted they wanted the requests in that format.

You can set the formatting of a cell using this module. Besides setting the cell value, you can set the cell format. Have a good read over the module documentation because it is very useful if you have particular formatting requirements (including colouring, cell width, and borders!).