Here's the script I'm trying... use strict; use Win32::OLE; my $excel = Win32::OLE-> new ('Excel.Application', 'Quit') or die ("Can't create object: ", Win32::OLE->LastError()); my $file = 'C:\EndPoint scripts\test.xls'; my $workbook = $excel->Workbooks->Open(@file) or die ("Can't open Workbook: ", Win32::OLE->LastError()); my $worksheet = $workbook->Worksheets(1); my $range = $worksheet->Range("A1:B2") -> {'Value'}; $workbook -> close; foreach my $row (@$range) { foreach my $cell (@$row) { print "$cell\t"; } print "\n"; }