in reply to Over a minute to do: use Win32::OLE::Const 'Microsoft Excel';

How long does it take to start Excel on the machine? Because that is what the use Win32::OLE::Const  'Microsoft Excel'; line is doing. It loads the 'Microsoft Excel' COM component, which is effectively the Excel application. I am guessing it loads some constants out of the library, but the application startup is where the time goes.