14

Are you able to change the color of a cell in a .xlsx file with PHPspreadsheet? Couldn't find anything in their function list or on Stack Overflow.

jdwee
  • 573
  • 1
  • 5
  • 15

3 Answers3

25

Tries to look this link Here

$spreadsheet->getActiveSheet()->getStyle('B2')
->getFont()->getColor()->setARGB(\PhpOffice\PhpSpreadsheet\Style\Color::COLOR_RED);
Natan Augusto
  • 360
  • 5
  • 5
5

For those who understand "change cell color" as Background color and not Text color, the right code is:

$spreadsheet->getActiveSheet()->getStyle('[YOUR_CELL_OR_RANGE_HERE]')->getFill()
    ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)
    ->getStartColor()->setARGB('YOUR_COLOR_CODE_HERE');

Example:

$spreadsheet->getActiveSheet()->getStyle('E2')->getFill()
    ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)
    ->getStartColor()->setARGB('FFFF0000');
Mannyfatboy
  • 389
  • 7
  • 14
0

Tries to look this link

$spreadsheet->getActiveSheet()->getStyle('B2')->getFont()->setColor(
    new \PhpOffice\PhpSpreadsheet\Style\Color(\PhpOffice\PhpSpreadsheet\Style\Color::COLOR_RED)
);
Alex78191
  • 2,383
  • 2
  • 17
  • 24