Я использую этот код. Для данных столбца E установлен вправо, но его не покажет эффект
$objPHPExcel->getActiveSheet() ->getStyle('E') ->getAlignment() ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
вместо «E», если я пишу E6, тогда он отображает данные ячейки E6 вправо.
$objPHPExcel->getActiveSheet() ->getStyle('E6') ->getAlignment() ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
Вы правы: стили строк и столбцов не поддерживаются PHPExcel.
Стиль укладки ячейки, но вы также можете установить стиль по диапазону ячеек:
$objPHPExcel->getActiveSheet() ->getStyle('E1:E256') ->getAlignment() ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
Попробуйте этот код. Он работает хорошо. И я подтвердил.
$activeSheet = $phpExcelObject->getActiveSheet(); //.. //... $activeSheet->getStyle("E") ->getAlignment() ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
Этот код выравнивает столбец E в горизонтальном направлении
Поскольку никто не объяснял, как создать целый столбец, который был частью вопроса, вот код:
$lastrow = $objPHPExcel->getActiveSheet()->getHighestRow(); $objPHPExcel->getActiveSheet() ->getStyle('E1:E'.$lastrow) ->getAlignment() ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
Я также подтвердил это, пытаясь применить определенные числа к колонкам: вы не можете применить стиль к столбцу – getStyle ('E') , вы должны указать диапазон – getStyle ('E1: E50') .
$objPHPExcel->getActiveSheet()->fromArray($row_array, NULL, 'A2'); $rows = count($row_array); $objPHPExcel->getActiveSheet()->getStyle('C2:C'.$rows)->getNumberFormat()->setFormatCode('000000000');
Этот код оставит поля в столбце C с нулями