perl : date from excel(.xlsx) not printed properly(format is changed)

I am trying to convert xlsx sheet to a csv file.
In .xlsx file there a cell with date

Mon 08/27/12

while reading this cell using Spreadsheet::XLSX, the output is display with numeric value i.e., 41148.

from Spreadsheet::XLSX module :

 use Text::Iconv;
 my $converter = Text::Iconv -> new ("utf-8", "windows-1251");
 
 # Text::Iconv is not really required.
 # This can be any object with the convert method. Or nothing.
 use Spreadsheet::XLSX;
 
 my $excel = Spreadsheet::XLSX -> new ('bandwidth-wan.xlsx', $converter);
 
 foreach my $sheet (@{$excel -> {Worksheet}}) {
 
        printf("Sheet: %s\n", $sheet->{Name});
        
        $sheet -> {MaxRow} ||= $sheet -> {MinRow};
        
         foreach my $row ($sheet -> {MinRow} .. $sheet -> {MaxRow}) {
         
                $sheet -> {MaxCol} ||= $sheet -> {MinCol};
                
                foreach my $col ($sheet -> {MinCol} ..  $sheet -> {MaxCol}) {
                
                        my $cell = $sheet -> {Cells} [$row] [$col];
 
                        if ($cell) {
                            printf("( %s , %s ) => %s\n", $row, $col, $cell -> {Val});
                        }
 
                } 
        }
 }

Spreadsheet::XLSX is based on Spreadsheet::ParseExcel .

I think the conversion is not being carried out correctly because perl is failed to recognize the format of the date. Therefore its showing just the number ( which is actually used by the excel along with the format specifier ).

Try to change the date format for a while and check.
I would suggest the format MM/DD/YYYY. So in your case its 08/27/2012. Just don't add other other things like week name.