MENU

phpexcel 一些基本的设置

2019 年 01 月 11 日 • 阅读: 1008 • 前端开发

phpexcel

最近 做项目接触到了导出excel 关于一些 表格的属性基本设置 要是有什么问题 希望大家指出来 共同学习

//实例化对象
        $objPHPExcel = new \PHPExcel();
 //设置工作簿的名称
        $objPHPExcel->getActiveSheet()->setTitle('预算经费表');
 //合并单元格
        $objPHPExcel->getActiveSheet()->mergeCells('A1:H1');
//拆分单元格
     //$objPHPExcel->getActiveSheet()->unmergeCells('A1:H1');
//设置单元格字体
        $objPHPExcel->getActiveSheet()->getStyle('A2')->getFont()->setName('宋体') //字体
        ->setSize(12) //字体大小
        ->setBold(true); //字体加粗 
//设置行的高度
        $objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(31.5);
        $objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(31.5);
        $objPHPExcel->getActiveSheet()->getRowDimension('3')->setRowHeight(69.75);
//长度不够显示的时候 是否自动换行
        $objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setWrapText(true);
//设置打印 页面 方向与大小(此为横向)
        $objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(\PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
        $objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(\PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
//冻结标题
      //第一种方式
    //$objPHPExcel->getActiveSheet()->freezePane('A1');
    //$objPHPExcel->getActiveSheet()->freezePane('A2');
      //第二种方式
    $objPHPExcel->getActiveSheet()->freezePaneByColumnAndRow(8,4);//(列,行)冻结的行数比你设置的要多一行(例 我需要设置的 是 3行   那么  参数就要写  4)
//设置水平居中 
    $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);    
    $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//垂直居中
    $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
    $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
//左对齐
        $objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
//右对齐
    $objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
// 设置页面边距为0.5厘米 (1英寸 = 2.54厘米)
    $margin = 1.78 / 2.54;   //phpexcel 中是按英寸来计算的,所以这里换算了一下
    $marginright = 1 / 2.54;   //phpexcel 中是按英寸来计算的,所以这里换算了一下
    //$pageMargins->setTop($margin);       //上边距
    //$pageMargins->setBottom($margin); //下
    $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft($margin);      //左
    $objPHPExcel->getActiveSheet()->getPageMargins()->setRight(marginright);    //右
    //$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToWidth('1');//自动填充到页面的宽度
    //$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToHeight('1');//自动填充到页面的高度
//设置 标题索引    (点击 标题 跳转到对应的工作簿中)
       $objPHPExcel->getActiveSheet()->getCell('B4')->getHyperlink()->setUrl("sheet://'"计算机软件技术"'!A1");
//设置边框
    $objPHPExcel->getActiveSheet()->getStyle('A1:H8')->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN);
返回文章列表 文章二维码
本页链接的二维码
打赏二维码