You can test for definedness.
#!/usr/bin/perl
use warnings;
use strict;
use feature qw{ say };
use Excel::Writer::XLSX;
use Spreadsheet::ParseXLSX;
{ my $workbook = 'Excel::Writer::XLSX'->new('m.xlsx');
my $worksheet = $workbook->add_worksheet;
my $f = $workbook->add_format;
$worksheet->merge_range(2, 2, 3, 3, undef, $f);
$worksheet->merge_range(4, 4, 5, 5, 'merged', $f);
$workbook->close();
}
{ my $parser = 'Spreadsheet::ParseXLSX'->new;
my $workbook = $parser->parse('m.xlsx');
my $worksheet = ($workbook->worksheets)[0];
for my $x (1 .. 5) {
for my $y (1 .. 5) {
my $cell = $worksheet->{Cells}[$x][$y];
print "[$x,$y] ", defined $cell ? $cell->is_merged : '-';
}
print "\n";
}
}
__END__
[1,1] -[1,2] -[1,3] -[1,4] -[1,5] -
[2,1] -[2,2] 1[2,3] 1[2,4] -[2,5] -
[3,1] -[3,2] 1[3,3] 1[3,4] -[3,5] -
[4,1] -[4,2] -[4,3] -[4,4] 1[4,5] 1
[5,1] -[5,2] -[5,3] -[5,4] 1[5,5] 1
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
|