使用的是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. 【DELL存储】EMC会议 超融合+存储

    场景:盐城工厂 IT人数 4个人  机房200台 主要以虚拟化为主 实体机 PG ORACAL MYSQL dell产品线 提供整体方案 架构 针对整车厂 :传统+超融合 1. 介绍产品 1.1 超融 ...

  2. Linux sudo(CVE-2019-14287)漏洞复现过程

    简述: 该漏洞编号是CVE-2019-14287. sudo是Linux系统管理指令,允许用户在不需要切换环境的前提下用其他用户的权限运行程序或命令,通常是以root身份运行命令,以减少root用户的 ...

  3. SOUL软件小结

    soul 基于心灵的智能社交APP.功能是寻找最适合自己的灵魂伴侣 基于心灵测试给你智能匹配最简单的社交关系 匿名聊天软件一般都是没有机器人的,机器人一般不能对点聊很长时间 用户来源与动机 用户引流来 ...

  4. 【BZOJ3691】游行 最小可相交路径覆盖转化

    因为C是不断变化的而且C是和点权相关和边权无关 所以我们可以MCMF但是MCMF的时候不能与C相关 再分析问题 我们可以认为每条路径S->T只覆盖T这个终点 因为题目中说了如果Si != Ti ...

  5. JSOI2009 密码 和 JSOI2007 文本生成器 和 ZOJ3545 Rescue the Rabbit

    密码 众所周知,密码在信息领域起到了不可估量的作用.对于普通的登陆口令,唯一的破解 方法就是暴力破解一逐个尝试所有可能的字母组合,但这是一项很耗时又容易被发现的工 作.所以,为了获取对方的登陆口令,在 ...

  6. Unity Platform Differernces

    https://docs.unity3d.com/560/Documentation/Manual/SL-PlatformDifferences.html

  7. Django rest framework的基本用法

    今天在网上看到几篇比较不错的drf基本功能介绍,本来想自己写一篇,后来发现脱不开原作者的思路,遂卒,直接扔链接小伙伴自己去看吧.... 1.django rest framework apiview. ...

  8. Mac 升级 Python2.7 到 Python3.5

    1.去 Python 官网下载一个版本的包 https://www.python.org/downloads/mac-osx/ 2.安装之后,去  /Library/Frameworks/Python ...

  9. Codeforces Round #603 (Div. 2) A,B,C,D【E题待补】

    #include<bits/stdc++.h> using namespace std; #define int long long signed main(){ int _; cin&g ...

  10. Educational Codeforces Round 76 (Rated for Div. 2) D题

    题意: 给你n个关卡,每个关卡有一个怪物,怪物的攻击力为a[i],你有n个英雄,每个英雄有一个攻击力,和疲劳值,只要英雄的攻击力比怪物的高就算打过了,同时疲劳减一,一天只能出战一个英雄,一个英雄可以打 ...