发新帖

[PHP] PHPExcel中设置表格边框并加粗

零下一度 2023-9-8 881

在PHPExcel中设置表格边框并加粗,可以使用getStyle()和getBorders()方法来设置边框样式。以下是一个示例代码:


// 创建一个新的PHPExcel对象
$objPHPExcel = new PHPExcel();
// 选择第一个工作表
$objPHPExcel->setActiveSheetIndex(0);
$sheet = $objPHPExcel->getActiveSheet();
// 设置单元格数据
$data = array(
    array('ID', 'Name', 'Age'),
    array(1, 'John', 25),
    array(2, 'Jane', 30),
    array(3, 'Bob', 35)
);
$sheet->fromArray($data);
// 设置边框样式
$cellRange = 'A1:C4'; // 要设置边框的单元格范围
$sheet->getStyle($cellRange)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN)->setWeight(2);
$sheet->getStyle($cellRange)->getBorders()->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN)->setWeight(2);
$sheet->getStyle($cellRange)->getBorders()->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN)->setWeight(2);
$sheet->getStyle($cellRange)->getBorders()->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN)->setWeight(2);
// 设置单元格格式
$cellFormat = array(
    'font' => array(
        'name' => 'Arial',
        'size' => 12,
        'bold' => true,
    ),
    'borders' => array(
        'allborders' => array(
		            'style' => \PHPExcel_Style_Border::BORDER_THIN,
		            'color' => array('argb' => 'FE0000'), // 设置边框颜色为红色
		        ),
    ),
);
$sheet->getStyle($cellRange)->setNumberFormat(clone $objPHPExcel->getCell('A1')->getStyle()->getNumberFormat());
$sheet->getStyle($cellRange)->applyFromArray($cellFormat);
// 保存Excel文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('output.xlsx');

在上述代码中,我们首先创建了一个PHPExcel对象并选择第一个工作表。然后,通过fromArray()方法设置单元格数据。接下来,使用getStyle()方法获取单元格样式对象,并使用getBorders()方法获取边框样式对象。通过setBorderStyle()和setWeight()方法设置上、右、下、左四个边框的样式和粗细。然后,使用setNumberFormat()方法设置单元格格式,包括字体、大小、加粗和边框颜色等。最后,使用save()方法保存Excel文件。


最新回复 (0)
返回
零下一度
主题数
931
帖子数
0
注册排名
1