#!/usr/bin/perl -w use strict; use CGI qw(:standard); use Excel::Writer::XLSX; use MIME::Lite; my $q = new CGI; print $q->header(); print $q->start_html(); print $q->h1('test'); print $q->end_html(); my $workbook = Excel::Writer::XLSX->new( 'test.xlsx' ); my $worksheet = $workbook->add_worksheet(); $worksheet->write( 0, 0, 'Test' ); $workbook->close(); my $email = MIME::Lite->new ( From => 'xxx', To => 'yyy', Subject => 'test', Encoding => 'quoted-printable', Data => 'test', Type => 'text/html' ); $email->attach ( Encoding => 'base64', Type => 'application/vnd.ms-excel', Path => $ENV{'DOCUMENT_ROOT'}.'/cgi-bin/test/excel/test.xlsx', Filename => 'test.xlsx' ); $email->send('smtp', "zzz", Timeout=>60);