This is very easy with ActiveX. Just create an Excel template file with the raw data on Sheet1 and your report on Sheet2. If you need complex analysis of the data, include that on a separate sheet. I have used Excel as a report generator for several projects.
Using ActiveX you need to:
1. Open Excel
2. Open the data file (Workbooks.OpenText)
3. Copy the data (Sheets(1).CurrentRegion.Copy)
4. Open the template file (Workbooks.Open)
5. Paste the data (Application.Paste "Sheet1!A1")
6. Send Sheet2 to the printer (Worksheet.PrintOut)
7. Optionally Save As... to a new xls file
8. Close both Workbooks (Workbook.Close SaveChanges=False)