导出后PHPExcel单元格格式化不起作用

时间:2017-02-04 01:01:12

标签: php phpexcel

我有一个PHP代码,可以将数据数据导出到excel。它工作正常,但格式化不在输出上。例如,我的数组值为0:13:00(它是24小时格式)。我想要的是将其格式化为excel [mm]:ss,因此导出后输出应为13:00但值保持不变,而当我查看excel中的单元格格式时,格式已经是在[mm]:ss。我还尝试将值更改为12小时格式(12:13:00 AM),但它也保持原样导出后。有人可以帮我这个。
这是我使用PHPExcel格式化单元格的代码。

$sheet = $objPHPExcel->getActiveSheet();
$sheet->getStyle('C3:N199')->getNumberFormat()->setFormatCode('[mm]:ss');

1 个答案:

答案 0 :(得分:1)

你的意思是你有一个包含"0:13:00"的字符串?您需要将其转换为MS Excel序列化时间戳,以获取[mm]:ss等数字格式代码以使其具有任何含义....使用

$objPHPExcel->getActiveSheet()
    ->setCellValue('A1', 
        PHPExcel_Calculation_DateTime::TIMEVALUE('00:13:15')
    );
$objPHPExcel->getActiveSheet()
    ->getStyle('A1')
    ->getNumberFormat()
    ->setFormatCode('[mm]:ss');

PHPExcel documentationexamples

中所述