It seems set_row() is not always effective in Excel-Writer.
===== test script
Spreadsheet-WriteExcel:
As expected, format applied to all row 1
Excel-Writer-XLSX:
Format applied from B1 onward.
A1 has default format (white bg and default font)
=====
use Excel::Writer::XLSX;
my $workbook = Excel::Writer::XLSX->new('t_bgc.xlsx');
#use Spreadsheet::WriteExcel;
#my $workbook = Spreadsheet::WriteExcel->new('t_bgc.xls');
my $worksheet = $workbook->add_worksheet();
my $f1 = $workbook->add_format();
$f1->set_bg_color(26);
$f1->set_font('Courier New');
$f1->set_border(1);
$f1->set_border_color(26);
$worksheet->set_row(0, undef, $f1);
$worksheet->write( 0, 0, 'TEST 12345678901234567890');
=====
> Excel 2003 and Excel 2007 behave differently in the way that row
> formats work but I should have picked that up in Excel::Writer::XLSX.
> Anyway, I've fixed the issue now and the fix is in version 0.15 on
> CPAN:
I downloaded the updated file and verified it does resolve the problem
I was encountering.
Thanks.