If you haven't seen it yet, the node
Index of Spreadsheet FAQs is a very good resource. There's also
Using Win32::OLE and Excel - Tips and Tricks from the
Tutorials section. The best general advice i can give is that if you can write it in vb (or have excel record a macro for you), you can probably directly port it to perl/
Win32::OLE code. Beyond controlling excel itself,
Spreadsheet::WriteExcel is very good for creating (but can't update) xls files as well (and doesn't require windows or excel).