Php Excel установил полное выравнивание данных столбца

Я использую этот код. Для данных столбца 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);

Ответы

Ответ 1

Вы правы: стили строк и столбцов не поддерживаются PHPExcel.

Элемент стиля ячейки, но вы также можете установить стиль по диапазону ячеек:

$objPHPExcel->getActiveSheet()
    ->getStyle('E1:E256')
    ->getAlignment()
    ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

Ответ 2

Попробуйте этот код. Он хорошо работает. И я подтвердил.

 $activeSheet = $phpExcelObject->getActiveSheet();
    //..
    //...
     $activeSheet->getStyle("E")
                 ->getAlignment()
                 ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

Этот код выравнивает столбец E в горизонтальном положении справа

Ответ 3

Так как никто не объяснил, как создать целый столбец, который был частью вопроса, вот код:

$lastrow = $objPHPExcel->getActiveSheet()->getHighestRow();

$objPHPExcel->getActiveSheet()
        ->getStyle('E1:E'.$lastrow)
        ->getAlignment()
        ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

Ответ 4

Я также подтвердил это, пытаясь применить определенные числа к колонкам: вы не можете применить стиль к столбцу - 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 с нулями