2017-02-06 20 views
1

Я применил правило условного форматирования для столбца B на листе excel. Когда я пытаюсь получить условные стили этой конкретной ячейки, я получаю пустой массив. Я использую приведенный ниже код для получения условных стилей.Метод PHPExcel getConditionalStyles() возвращает пустой массив

Я использовал setReadDataOnly (false), чтобы получить всю информацию о стиле. Ниже приведен код, который я использую для создания объекта-читателя.

$PHPExcelObj = new PHPExcel; 
$InputFileType = PHPExcel_IOFactory::identify($path); 
$ObjReader  = PHPExcel_IOFactory::createReader($InputFileType); 
$ObjReader->setReadDataOnly(false); 
$PHPExcelObj->setActiveSheetIndex(0); 
$conditionalStyles = $PHPExcelObj->getActiveSheet()->getStyle('B4')->getConditionalStyles(); 

Я не мог понять, что я делаю неправильно. Любые выводы будут очень полезными. Благодаря

Edit1:

Исходный файл был .xls файл. После того как я сохранил его как .xlsx-файл, я могу получить условные стили. Метод getConditionalStyles() работает только с файлами .xlsx?

Edit2:

Даже с .xlsx файл, он только частично показаны условные стили. Для некоторых ячеек, даже если существует правило условного стиля, оно не отображается. Может ли кто-нибудь представить, как я могу это достичь. Моя цель - получить информацию о стиле для таких ячеек, как background-color, font-weight и all. Есть ли другие библиотеки чтения Excel, которые я могу использовать, помимо PHPExcel?

ответ

-1

Попробуйте без GetStyle:

$conditionalStyles = $PHPExcelObj->getActiveSheet()->getConditionalStyles('B4');