If you want to avoid the "Number stored as text" warnings in Excel then you will have to write the data as numbers and format it to have a padded leading zero. Item 3 of the example below demonstrates this.
#!/usr/bin/perl -w
use strict;
use Spreadsheet::WriteExcel;
my $workbook = Spreadsheet::WriteExcel->new('test.xls');
my $worksheet = $workbook->addworksheet();
# A padded number format
my $format = $workbook->add_format(num_format => '0000');
# 1. Implicitly write a number, the leading zero is removed: 123
$worksheet->write('B2', '0123');
# 2. Write explicitly as a string: 0123
$worksheet->write_string('B3', '0123');
# 3. Write a zero padded number using a format: 0123
$worksheet->write('B4', '0123', $format);
__END__
--
John.
|