in reply to Unable to send the xls attachment file with the Mail::Sender
If you are using Spreadsheet::WriteExcel to generate the XLS file then you need to ensure that you close() the workbook prior to attaching it to an email. From the docs:
In general your Excel file will be closed automatically when your program ends or when the Workbook object goes out of scope, however the close() method can be used to explicitly close an Excel file. ... An explicit close() is required if the file must be closed prior to performing some external action on it such as copying it, reading its size or attaching it to an email.