Hide Columns with PhpSpreadsheet

1.9k Views Asked by At

I am trying to hide some specific columns on a local Excel Sheet, but it does not hide, the code I am using is:

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($filePath);
$spreadsheet->getActiveSheet()->getColumnDimension('A')->setVisible(false);
$spreadsheet->getActiveSheet()->getColumnDimension('B')->setVisible(false);
$spreadsheet->getActiveSheet()->getColumnDimension('C')->setVisible(false);

$writer = new Xlsx($spreadsheet);
$writer->save($filePath);

Why it does not hide the columns I selected? And what can I do to solve that?

1

There are 1 best solutions below

0
On BEST ANSWER

use both in combination to hide for example column 'A'

$spreadsheet->getActiveSheet()->getColumnDimension('A')->setCollapsed(true);
$spreadsheet->getActiveSheet()->getColumnDimension('A')->setVisible(false);