use strict; use CGI qw(header); use POSIX; use Spreadsheet::WriteExcel; my $tmp_file = tmpnam(); { my $workbook = Spreadsheet::WriteExcel->new($tmp_file) or die; my $worksheet = $workbook->addworksheet() or die; my $format = $workbook->addformat() or die; $format->set_bold(); $format->set_color('red'); $format->set_align('center'); $worksheet->write(0, 0, "Hi Excel!"); $worksheet->write(1, 0, 1.2345); $worksheet->write(2, 0, "Hi Excel!", $format); } open(FH,$tmp_file) or die; print header(-type=>'application/vnd.ms-excel'); print while ; unlink $tmp_file;