phpexcel - PHP SpreadSheet can't find the function to auto size column width

Solution:

Don't use range(). It won't work when cells beyond Z. Use instead

foreach ($sheet->getColumnIterator() as $column) {
   $sheet->getColumnDimension($column->getColumnIndex())->setAutoSize(true);
}

Answer

Solution:

For spreadsheet the answer is:

require 'vendor/autoload.php';

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

  foreach (range('A','B') as $col) {
   $sheet->getColumnDimension($col)->setAutoSize(true);
}

Answer

Solution:

A slight modification that does not require you to know how many columns you have in your spreadsheet:

foreach (range('A', $sheet->getHighestColumn()) as $col) {
   $sheet->getColumnDimension($col)->setAutoSize(true);
}

Source