В настоящее время я пытаюсь установить все границы для своей таблицы, а также форматирование, такое как autosize.
Мой код ниже работает для листа 1. Все остальные листы внутри электронной таблицы полностью нетронуты. Я пытался заставить его работать со всеми другими листами внутри этой таблицы, но не повезло.
Любые идеи о том, как я могу глобально установить форматирование, чтобы все листы имели границы и автоматизировали? Расположение всех листов в этой таблице одинаково. Я экспортирую в файл XLSX.
Приветствия,
/**autosize*/
for ($col = 'A'; $col != 'P'; $col++) {
$objPHPExcel->getActiveSheet()->getColumnDimension($col)->setAutoSize(true);
}
/** Borders for all data */
$objPHPExcel->getActiveSheet()->getStyle(
'A2:' .
$objPHPExcel->getActiveSheet()->getHighestColumn() .
$objPHPExcel->getActiveSheet()->getHighestRow()
)->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
/** Borders for heading */
$objPHPExcel->getActiveSheet()->getStyle(
'A1:O1'
)->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK);
ДОПОЛНИТЕЛЬНЫЙ ВОПРОС: В настоящее время я устанавливаю заголовки. Заголовки отображаются на листе 1, но не отображаются ни в каких других листах. Можно ли показывать заголовки во всех листах? Заголовки задаются в строке 1. и результаты от строки 2 вниз.
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Asset_id');
$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Asset_name');
$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Asset_type');
$objPHPExcel->getActiveSheet()->setCellValue('D1', 'Asset_make');
$objPHPExcel->getActiveSheet()->setCellValue('E1', 'Asset_model');