2015-04-23 19 views
1

我需要在Excel中保留日期時間格式,但它在Excel中保存爲純文本格式。 請發現代碼如下,Excel使用Perl保存數組中的日期格式

use strict; 
    use warnings; 
    use Spreadsheet::WriteExcel; 

    my @array = ("Name","2014-04-01 00:00:00AM","2014-04-01 22:00:00AM","Value"); 
    my $filename = "report.xls"; 
    my $workbook = Spreadsheet::WriteExcel->new($filename); 
    my $worksheet = $workbook->add_worksheet(); 

    $worksheet->write_row($row++,$col,\@array); 

在此先感謝!

+0

究竟是什麼問題? – blueygh2

+0

嗨,它在列中保存一個文本格式的值。但它應該是日期時間格式。 – Vasanth

回答

1

的文檔狀態:

$worksheet->write_row(0, 0, $array_ref); 

# The above example is equivalent to: 
$worksheet->write(0, 0, $array[0]); 
$worksheet->write(0, 1, $array[1]); 
$worksheet->write(0, 2, $array[2]); 

如果您通過批量寫入的數組引用,我想這是不可能指定要使用什麼樣的格式爲每列。不過,也有其他的方法,如

write_date_time($row, $col, $date_string, $format)

你將不得不分開來寫的每一行單元格,但你會得到想要的格式。 (我猜)