If you should afterall be interested in Spreadsheet::ParseExcel, then maybe the following code from the docs (after naming the variables with slightly better readable names) is going to help you
use strict;
use Spreadsheet::ParseExcel;
my $BookObject = Spreadsheet::ParseExcel::Workbook->Parse('Excel/Test9
+7.xls');
foreach my $WorksheetObject (@{$BookObject->{Worksheet}}) {
print "--------- SHEET:", $WorksheetObject->{Name}, "\n";
for(my $RowIndex = $WorksheetObject->{MinRow}; # starting at minimu
+m row value
defined $WorksheetObject->{MaxRow} &&
$RowIndex <= $WorksheetObject->{MaxRow}; # ending at maximum
+row value
$RowIndex++) {
for (my $ColumnIndex = $WorksheetObject->{MinCol};
defined $WorksheetObject->{MaxCol} &&
$ColumnIndex <= $WorksheetObject->{MaxCol};
$ColumnIndex++) {
$CellObject = $WorksheetObject->{Cells}[$RowIndex][$ColumnIn
+dex]; # get cell
print "( $RowIndex , $ColumnIndex ) =>",
$CellObject->Value, "\n" # print cell contents ...
if ($CellObject); # ... if cell exists
}
}
}
Overview over the Spreadsheet::ParseExcell class:
class Spreadsheet::ParseExcel
| via ->Parse
class Spreadsheet::ParseExcel::Workbook
| via ->{Worksheet}
class Spreadsheet::ParseExcel::Worksheet
| via ->{Cells}[$Row][$Column]
class Spreadsheet::ParseExcel::Cell
And as well, but not so important:
class Spreadsheet::ParseExcel::Format
class Spreadsheet::ParseExcel::Font
class Spreadsheet::ParseExcel::Fmt
Hope this helped.
CombatSquirrel. |