1

我正在尝试在我的 xls 输出表中格式化单元格,但是当我尝试使用时

$xls->getActiveSheet()->getStyle('A1')->getFont()->getColor()->setRGB(PHPExcel_Style_Color::COLOR_WHITE);

getStyle()或我收到此错误的任何其他方法:

( ! ) 致命错误:在第 755 行的“...”/Worksheet.php 中的非对象上调用成员函数 getNumberFormat()

其他getActiveSheet()方法喜欢setTitle()getColumnDimension()工作正常。我正在使用 Excel5 编写器,但是当我尝试 Excel2007 时,我得到了同样的错误。有谁知道可能是什么问题?提前致谢。

当我注释掉列宽循环时,我没有收到错误,但应用的样式仍然不起作用。列宽循环完美地工作,无需样式应用代码。

4

1 回答 1

0

您可以尝试此方法为您的 PHPExcel 添加样式。

首先创建一个包含样式的数组。像这样的东西

    $color = array(
        'fill' => array(
            'type' => PHPExcel_Style_Fill::FILL_SOLID,
            'color' => array('rgb' => 'A5A5A5')
        ),
        'borders' => array(
            'allborders' => array(
                'style' => PHPExcel_Style_Border::BORDER_THIN
            )
        ),
        'alignment' => array(
            'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
        )
    );

创建数组后,您必须将样式应用于您的对象。像这样的东西。

    $xls->getActiveSheet()->getStyle('A1:A10')->applyFromArray($color);
于 2016-11-30T14:49:42.407 回答