博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHPExcel使用笔记
阅读量:417 次
发布时间:2019-03-06

本文共 2305 字,大约阅读时间需要 7 分钟。

PHPExcel使用笔记 - 常见操作总结

最近做项目时,PHPExcel插件用得比较频繁,将其常见的操作总结一下…

$objPHPExcel->getDefaultStyle()->getFont()->setName('微软雅黑');  // 设置字体$objPHPExcel->getDefaultStyle()->getFont()->setSize(11);   // 设置字号
$monthDate = $sheet->setCellValueExplicitByColumnAndRow($colIndex,2, '');  // 填充内容$monthDate->getStyleByColumnAndRow($colIndex, $rowIndex)->getAlignment()->setWrapText(true)->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER)->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);$monthDate->getColumnDimensionByColumn($col)->setWidth(5);
setWrapText(true): 单元格内换行setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER): 设置水平对齐setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER): 设置垂直对齐

设置单元格的背景颜色:

$sheet->getStyleByColumnAndRow($colIndex,2, $colIndex,2)->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);$sheet->getStyleByColumnAndRow($colIndex,2, $colIndex,2)->getFill()->getStartColor()->setRGB('BEBEBE');// setARGB 只有 RED、GREEN两种常见的颜色...

使用数组方式设置样式:

$styleArray = array(    'borders' => array(        'allborders' => array(            'style' => \PHPExcel_Style_Border::BORDER_THIN        )    ));$sheet->getStyleByColumnAndRow(0, 1, $colIndex, $rowIndex-1)->applyFromArray($styleArray);

合并单元格并填充内容:

$sheet->mergeCellsByColumnAndRow(0,$rowIndex+1,$colIndex,$rowIndex+1)->setCellValueByColumnAndRow(0, $rowIndex+1, 'content');

给所有的单元格设置边框:

$objPHPExcel->getActiveSheet()->getStyle('A1:' .        $objPHPExcel->getActiveSheet()->getHighestColumn() .        ($objPHPExcel->getActiveSheet()->getHighestRow()-1))->applyFromArray($styleArray);

给字体设置下划线,超链接形式,加上蓝色即可:

$sheet->getStyleByColumnAndRow(3, $rowIndex)->getFont()->setUnderline()->setUnderline(true);

或:

$styleArray = array(  'font' => array(    'underline' => PHPExcel_Style_Font::UNDERLINE_SINGLE  ));$objPHPExcel->getActiveSheet()->getStyle('A1')->applyFromArray($styleArray);

给所有单元格设置自适应高度:

foreach($objPHPExcel->getActiveSheet()->getRowDimensions() as $rd) {    $rd->setRowHeight(-1);  // 给所有单元格设置自适应高度, 高度随着内容变化}

相关链接:

php - How to Apply Borders to All Cells, Not a Range! - Stack Overflow

php - PHPEXCEL set border and format for all sheets in spreadsheet - Stack Overflow

php - PHPEXCEL set border and format for all sheets in spreadsheet - Stack Overflow

php - How to do the phpexcel Outside Border - Stack Overflow

转载地址:http://cvduz.baihongyu.com/

你可能感兴趣的文章