PHPExcel常用属性使用

 前景:

  需先实例化几个变量:

      $this->objExcel = new PHPExcel();  //实例化一个PHPExcel变量

       $this->objExcel->setActiveSheetIndex(0);  //设置要操作的Sheet页

       $this->objActSheet = $this->objExcel->getActiveSheet();  //获取当前要操作的Sheet页

       $objStyle = $this->objActSheet->getStyle('A1');  //获取要设置单元格的样式,括号里的内容也可是:('A1:E1')

       $objAlign = $objStyle->getAlignment();  //用来设置对齐属性和单元格内文本换行的一个变量

      $objFont = $objStyle->getFont();  //获得字体属性

 常用属性:

  1、设置Sheet名称:

      //设置当前活动sheet的名称
      $this->objActSheet->setTitle($title);

   2、设置对齐和单元格内换行

    2.1、水平对齐

      //设置单元格内容水平对齐

      $objAlign->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);

      说明:

        水平对齐的变量有:PHPExcel_Style_Alignment::HORIZONTAL_LEFT、PHPExcel_Style_Alignment::HORIZONTAL_CENTER、PHPExcel_Style_Alignment::HORIZONTAL_RIGHT;

        具体含义分别为:左对齐、居中对齐、右对齐。

     2.2、竖直对齐

     $objAlign->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);

      说明:

           竖直对齐的变量有:PHPExcel_Style_Alignment::VERTICAL_TOP、PHPExcel_Style_Alignment::VERTICAL_CENTER、PHPExcel_Style_Alignment::VERTICAL_BOTTOM

           具体含义分别为:顶部对齐、竖直居中对齐、底部对齐

     2.3、单元格内换行

      $objAlign->setWrapText(true);

      说明:

        1、此举是为了实现单元格内可以手动指定换行的位置。只要指定的文本本身是换行的,或者插入换行符('\n')。

        2、要换行的文字,外面必须是双引号

      例如:

        文本设置为:$arr['header'] = "哈哈\nHelloWorld";

        显示的效果为:

              哈哈
              HelloWorld

  3、设置字体、颜色等

   3.1、设置字体

      $objFont->setName('微软雅黑' );  //设置要使用的字体

     3.2、设置字号

       $objFont->setSize( 11 );

   3.3、设置加粗

      $objFont->setBold( false );

     3.4、设置字颜色

       $objFont->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);  

     说明:

       1、其颜色组成为:Alpha(透明度)通道+RGB色彩模式

       2、ARGB---Alpha,Red,Green,Blu

       3、一般我自己用的值都是"FF"+RGB的颜色值,如:"FFCC15DD"

  4、单元格设置:

   4.1、设置背景色  

      $objStyle->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
       $objStyle->getFill()->getStartColor()->setARGB('FF595959');

   4.2、设置宽度

      $this->objActSheet->getColumnDimension($widthStr)->setWidth('27.45');

   4.3、设置高度

      $this->objActSheet->getRowDimension($heightStr)->setRowHeight('27.45');

   4.4、单元格合并

      $this->objActSheet->mergeCells('A1:I1');

       里面指定要合并的单元格范围

  5、其他设置:

   5.1、设置自动筛选

      $this->objActSheet->setAutoFilter("A2:B2");

       说明:

         当前笔者比较愚笨,还不能做到随意指定设置自动筛选的方法。

   5.2、单元格格式设置防止科学计数法     

       //设置单元格格式(防止科学技术法)
       $numberFormat = $objStyle->getNumberFormat();
       $numberFormat->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);

       说明:         

         读取的时候一定要用:getFormattedValue(),这样可以一定程度上减少读出科学计数法的数。虽然php有方法转换科学计数法,但是会遭遇精度丢失的情况。

         笔者现在最头疼的一个问题就是科学计数法,现在还未有非常好的解决方案,现在能解决的方法都不彻底。笔者会继续探索! 

PHPExcel常用属性使用的更多相关文章

  1. 【Android自学日记】五大布局常用属性

    线性布局(LinearLayout)常用属性: android:orientation="vertical"--决定子类控件的排布方式(vertical垂直:horizontal水 ...

  2. DataGrid中的常用属性

    DataGrid中的常用属性 $('#dg').datagrid({ url:'datagrid_data.json', columns:[[ {field:'code',title:'Code',w ...

  3. Node.js process 模块常用属性和方法

    Node.js是常用的Javascript运行环境,本文和大家发分享的主要是Node.js中process 模块的常用属性和方法,希望通过本文的分享,对大家学习Node.js http://www.m ...

  4. ImageView的常用属性

    ImageView的一些常用属性,并且这些属性都有与之对应的getter.setter方法: android:adjustViewBounds:设置ImageView是否调整自己的边界来保持所显示图片 ...

  5. HTML a标签、4个伪类、常用属性(下载)、锚链接(待扩展:邮件、电话、短信、GPS)

    HTML 超链接<a> 1.超链接可以是一个字.一个词.一组词.一幅图像,您可以点击这些内容来跳转到新的文档或者当前文档中的某个部分. 2.当您把鼠标指针移动到网页中的某个链接上时,箭头会 ...

  6. iOS导航控制器常用函数与navigationBar常用属性

    导航控制器常用函数触发时机 当视图控制器的View将要出现时触发 - (void)viewWillAppear:(BOOL)animated 当视图控制器的View已经出现时触发 - (void)vi ...

  7. CSS样式常用属性整理

    web工程师是最近5年刚刚兴起的一门高薪职业,人们的专注度越来越高. 那么前端除了学习html标签之外还需要掌握什么知识点呢? 为大家整理了一个和HTML标签密不可分的知识要点--<CSS样式常 ...

  8. WPF DataGrid常用属性记录

    WPF DataGrid常用属性记录 组件常用方法: BeginEdit:使DataGrid进入编辑状态. CancelEdit:取消DataGrid的编辑状态. CollapseRowGroup:闭 ...

  9. Android开发中XML布局的常用属性说明

    <!-- 常用属性说明: android:id="@+id/button" 为控件指定Id android:text="NNNNNNNNNN" 指定控件的 ...

随机推荐

  1. LeetCode455. Assign Cookies

    Description Assume you are an awesome parent and want to give your children some cookies. But, you s ...

  2. JSP接口浅析

    一.tree型关系 JSP页面继承了org.apache.jasper.runtime.HttpJspBase抽象类并实现了org.apache.jasper.runtime.JspSourceDep ...

  3. ASP.NET:把ashx写到类库里并在页面上调用的具体方法

    在类库中建Http Handler的操作很简单,就是添加一个普通的类,然后把之前ashx里的代码几乎一模一样贴到这个类中.但要注意命名空间和类名,因为之后我们会用 到.样例Handler: names ...

  4. Apache thrift - 使用,内部实现及构建一个可扩展的RPC框架

    本文首先介绍了什么是Apache Thrift,接着介绍了Thrift的安装部署及如何利用Thrift来实现一个简单的RPC应用,并简单的探究了一下Thrift的内部实现原理,最后给出一个基于Thri ...

  5. Android中AsyncTask的使用 (包含文件的下载与存储)

    今天看到大神写的相关详解Android中AsyncTask的使用,真的很是佩服,下面我将学习到的AsynTask知识运用到项目中,其中也涉及一些文件的下载与存储到本地 啥都不说了,直接上代码,我将对其 ...

  6. CMU-15445 LAB3:事务隔离,two-phase locking,锁管理器

    概述 本lab将实现一个锁管理器,事务通过锁管理器获取锁,事务管理器根据情况决定是否授予锁,或是阻塞等待其它事务释放该锁. 背景 事务属性 众所周知,事务具有如下属性: 原子性:事务要么执行完成,要么 ...

  7. 基于Boost无锁队列实现的内存池

  8. iOS学习笔记(二)——Hello iOS

    前面写了iOS开发环境搭建,只简单提了一下安装Xcode,这里再补充一下,点击下载Xcode的dmp文件,稍等片刻会有图一(拖拽Xcode至Applications)的提示,拖拽至Applicatio ...

  9. HDU4027(Can you answer these queries?)

    题目链接:传送门 题目大意:有一个长度为n的数组,有m次操作,每次操作输入 v x y,v==0时x~y区间内的数都开平方并且向下取整,v==1时求x~y区间内所有数的和. 题目思路:long lon ...

  10. 【BZOJ1820】[JSOI2010]Express Service 快递服务 暴力DP

    [BZOJ1820][JSOI2010]Express Service 快递服务 Description 「飞奔」快递公司成立之后,已经分别与市内许多中小企业公司签订邮件收送服务契约.由于有些公司是在 ...