使用的是phpexcel,基本用的原生语法,所见即所得,直接复制下面代码,即可:

// 引用phpexcel类
$this->load->library('PHPExcel'); // 创建对象
$objPHPExcel = new PHPExcel(); // 显示错误信息
error_reporting(E_ALL); // Set properties
$objPHPExcel->getProperties()->setCreator("1245049149@qq.com")
->setLastModifiedBy("1245049149@qq.com")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
->setKeywords("office 2007 openxml php")
->setCategory("Test result file"); // 字体和样式
$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(12); //字体大小
$objPHPExcel->getActiveSheet()->getStyle('A2:D2')->getFont()->setBold(false); //第二行是否加粗
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); //第一行是否加粗
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(16); //第一行字体大小
$objPHPExcel->getActiveSheet()->getStyle('A2')->getFont()->setSize(14); //第二行字体大小
$objPHPExcel->getActiveSheet()->getStyle('A6')->getFont()->setSize(14); //第六行字体大小
$objPHPExcel->getActiveSheet()->getStyle('A11')->getFont()->setSize(14); //第十一行字体大小 // 设置垂直居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A2:D2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); // 设置水平居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A3:G5')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A7:G10')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A12:B15')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); //设置左对齐
$objPHPExcel->getActiveSheet()->getStyle('A2')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$objPHPExcel->getActiveSheet()->getStyle('A6')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$objPHPExcel->getActiveSheet()->getStyle('A11')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT); // 设置行高度
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(20); //设置默认行高
$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(30); //第一行行高 //设置单元格宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20); // 合并
$objPHPExcel->getActiveSheet()->mergeCells('A1:G1');
$objPHPExcel->getActiveSheet()->mergeCells('A2:G2');
$objPHPExcel->getActiveSheet()->mergeCells('A6:G6');
$objPHPExcel->getActiveSheet()->mergeCells('A11:B11'); // 设置内容
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '利润核算统计')
->setCellValue('A2', '【用户充值】')
->setCellValue('A3', '费率')
->setCellValue('B3', '笔数 ')
->setCellValue('C3', '充值进账')
->setCellValue('D3', '手续费')
->setCellValue('E3', '利润')
->setCellValue('A4', '1.0%')
->setCellValue('B4', $pay_log_list['aa'])
->setCellValue('C4', $pay_log_list['bb'])
->setCellValue('D4', $pay_log_list['cc'])
->setCellValue('E4', $pay_log_list['dd'])
->setCellValue('A5', '合计')
->setCellValue('B5', $pay_log_list['ee'])
->setCellValue('C5', $pay_log_list['ff'])
->setCellValue('D5', $pay_log_list['gg'])
->setCellValue('E5', $pay_log_list['hh'])
->setCellValue('A6', '【用户提现】')
->setCellValue('A7', '类别')
->setCellValue('B7', '笔数')
->setCellValue('C7', '申请提现')
->setCellValue('D7', '手续费')
->setCellValue('E7', '快钱提现')
->setCellValue('F7', '手续费')
->setCellValue('G7', '利润')
->setCellValue('A8', '收取手续费')
->setCellValue('B8', $withdraw_list['ii'])
->setCellValue('C8', $withdraw_list['kk'])
->setCellValue('D8', $withdraw_list['ll'])
->setCellValue('E8', $withdraw_list['mm'])
->setCellValue('F8', $withdraw_list['nn'])
->setCellValue('G8', $withdraw_list['oo'])
->setCellValue('A9', '未收取手续费')
->setCellValue('B9', $withdraw_list['pp'])
->setCellValue('C9', $withdraw_list['qq'])
->setCellValue('D9', $withdraw_list['rr'])
->setCellValue('E9', $withdraw_list['ss'])
->setCellValue('F9', $withdraw_list['tt'])
->setCellValue('G9', $withdraw_list['ww'])
->setCellValue('A10', '合计')
->setCellValue('B10', $withdraw_list['uu'])
->setCellValue('C10', $withdraw_list['vv'])
->setCellValue('D10', $withdraw_list['xx'])
->setCellValue('E10', $withdraw_list['yy'])
->setCellValue('F10', $withdraw_list['zz'])
->setCellValue('G10', $withdraw_list['aaa'])
->setCellValue('A11', '【利润汇总】')
->setCellValue('A12', '充值手续费收')
->setCellValue('B12', $all_summary['bbb'])
->setCellValue('A13', '提现手续费支')
->setCellValue('B13', $all_summary['ccc'])
->setCellValue('A14', '快钱提现手续费支')
->setCellValue('B14', $all_summary['ddd'])
->setCellValue('A15', '利润')
->setCellValue('B15', $all_summary['eee']); // Rename sheet
$objPHPExcel->getActiveSheet()->setTitle('利润核算表'); // Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0); // 设置输出
$tableName = '利润核算表【'.$st.'--'.$et.'】';
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="' .$tableName. '.xls"');
header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;

基本效果展示,视图页面样式:

下载excel后,效果展示:

转 : https://www.cnblogs.com/qwgshare/p/9782889.html

php实现excel单元格合并,字体加粗居中等操作的更多相关文章

  1. POI实现EXCEL单元格合并及边框样式

    POI实现EXCEL单元格合并及边框样式     下面例子为创建产生一个excel,合并单元格,然后为合并后的单元格添加边框 package test; import java.io.FileOutp ...

  2. POI如何自动调整Excel单元格中字体的大小

    问题 目的是要将Excel中的文字全部显示出来,可以设置对齐格式为[缩小字体填充],但是这样的话只能展示出一行数据,字体会变得很小.还有一种办法,设置对齐格式为[自动换行],然后让单元格中的字体自动调 ...

  3. POI获取excel单元格红色字体,淡蓝色前景色的内容

    如果是Microsoft Excel 97-2003 工作表 (.xls) if(31 == cell.getCellStyle().getFillForegroundColor()) //判断单元格 ...

  4. Excel单元格内容批量加前缀

    比如83190001在A1单元格,要在A列单元内容前面批量加0,在B1输入公式="0"&A1然后向下复制再把B列复制的结果再复制一下:然后到新的一列粘贴,在“粘贴选项”中选 ...

  5. C# 解决EXCEL单元格合并,行高无法自适应问题

    解决方法:根据单元格内容长度,设置单元格所在行的行高 public static float getExcelCellAutoHeight(string strtest, float fontCoun ...

  6. php原生PHPExcel插件导表(附表格合并,加粗居中及加边框换行操作)

    PHPExcel是用来操作Office Excel文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言.可以使用它来读取.写入不同格式的电子表格,如 Excel(BIFF) .xls, E ...

  7. Qt实现表格控件-支持多级列表头、多级行表头、单元格合并、字体设置等

    目录 一.概述 二.效果展示 三.定制表头 1.重写数据源 2.重写QHeaderView 四.设置属性 五.相关文章 原文链接:Qt实现表格控件-支持多级列表头.多级行表头.单元格合并.字体设置等 ...

  8. 修复Java使用POI合并Excel单元格后,边框不显示的问题

    使用Apache POI生成Excel文档时,当进行单元格合并操作后,被合并的单元格边框会消失,使用如下方式可以解决. 创建方法: public void setBorderStyle(int bor ...

  9. C#/VB.NET 在Excel单元格中应用多种字体格式

    在Excel中,可对单元格中的字符串设置多种不同样式,通常只需要获取到单元格直接设置样式即可,该方法设置的样式会应用于该单元格中的所有字符.如果需要对单元格中某些字符设置样式,则可以参考本文中的方法. ...

随机推荐

  1. stm32 引脚映射 和 ADC

    老是弄不明白ADC的输入到底在哪,看了stm32F103Ve的datasheet,将引脚和通道的映射关系贴在下面: 好了,写到这,我已经看了中文手册一上午了,可是啥都没看懂,下午接着看,写代码不重要, ...

  2. 修改ssh的22端口

    将ssh22端口修改为12345 https://www.cnblogs.com/chen-lhx/p/3974605.html # iptables开放12345端口iptables -I INPU ...

  3. Android笔记(三十二) Android中线程之间的通信(四)主线程给子线程发送消息

    之前的例子都是我们在子线程(WorkerThread)当中处理并发送消息,然后在主线程(UI线程)中获取消息并修改UI,那么可以不可以在由主线程发送消息,子线程接收呢?我们按照之前的思路写一下代码: ...

  4. java - day019 - 数据库

    https://www.cnblogs.com/myxq666/p/7787744.html Mac 安装MySQL步骤 什么是数据库 数据库: 英文名称Database ,简称 DB 数据库是按照数 ...

  5. 如何在windows server2016搭建DHCP服务器

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议.指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分 ...

  6. Python 写入训练日志文件并控制台输出

    1. 背景 在深度学习的任务中,通常需要比较长时间的训练,因此我们会选择离开电脑.笔者在跟踪模型表现, 观察模型accuracy 以及 loss 的时候,比较传统的方法是在控制台print输出或者直接 ...

  7. LB_Kim

    LB_Kim 搜了一圈发现居然很少有博客说到这个东西, LB_Kim, 就是Kim设计的 下界函数 计算公式: LB_Kim(S,C)=MAX(i=1,2,3,4) d(∮(i)A,∮(i)C) em ...

  8. MaxPlus WStr Python 中的字符串传递给 MaxPlus

    MaxPlus WStr Python 中的字符串传递给 MaxPlus 在 MaxPlus 中,很多方法的参数使用的字符串的类是 WStr,所以在 Python 中,我们传递字符串的时候,就要把 P ...

  9. 前端学习笔记--html入门

    1.什么是html 2.标签和元素: 标签可嵌套,要注意缩进 html文档中的元素分为:内容文本.标签 3.标签和属性: 4.html的文件结构: 5.标签 a标签: 还不知道跳转到哪里,可以使用虚拟 ...

  10. ModelAndView返回Json格式的数据

    第一种方式: 1.自定义类JacksonUtil.java,类中实现tojson方法(即将数据转成json类型): 2.自定义类JsonView 继承 AbstractView 3.xml中配置bea ...