Все работает хорошо, за исключением одного маленького вещь. Я условно форматирую некоторые ячейки, чтобы они имели определенный цвет. Я не получаю ни ошибки, ни правильного цвета фона для других ячеек, они просто остаются белыми.
Я использую PHPExcel для создания выходных данных, следующее мой код:
Код: Выделить всё
//just for information:
// $spreadsheet = $objPHPExcel->getActiveSheet();
//normal
$conditionalStyleNormal = new PHPExcel_Style_Conditional();
$conditionalStyleNormal->setConditionType(PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT)
->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT)
->setText('Normal (Mittagspause)')
->getStyle()->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID)->getEndColor()
->setARGB(PHPExcel_Style_Color::COLOR_LIGHTYELLOW);
//apply style
$conditionalStyles = $spreadsheet->getStyle('A5:A50')->getConditionalStyles();
array_push($conditionalStyles, $conditionalStyleNormal);
$spreadsheet->getStyle('A5:I50')->setConditionalStyles($conditionalStyles);
//copy style to other cells (does not work)
$spreadsheet->duplicateStyle($spreadsheet->getStyle('A5'), 'C5:I5');
В документации PHPExcel сказано:
Если вы хотите скопировать набор правил в другие ячейки, вы можете продублировать объект стиля:
$objPHPExcel->getActiveSheet()->duulateStyle($objPHPExcel->getActiveSheet()->getStyle('B2'), 'B3:B7');
Я что-то упускаю из виду? Или это просто ошибка? Если да, то есть ли хороший обходной путь?
Не удалось найти решение, только что выяснилось, что в более ранней версии функция работала неправильно. Я работаю с PHPExcel 1.8.0.
Заранее спасибо!
Подробнее здесь: https://stackoverflow.com/questions/311 ... es-nothing
Мобильная версия