非对象上的PHPExcel单元格样式格式错误

问题描述 投票:1回答:1

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

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

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

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

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

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

php phpexcel cell-formatting
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);
© www.soinside.com 2019 - 2024. All rights reserved.