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. selenium 自动化工具

    问题 今天在使用selenium+PhantomJS动态抓取网页时,出现如下报错信息: UserWarning: Selenium support for PhantomJS has been dep ...

  2. [已解决]window下Can't connect to MySQL server on 'localhost' (10061)与无法启动MYSQL服务”1067 进程意外终止”

    查了一圈,发现都解决不了我的问题,查了 window 系统日志,提示缺少了某些文件,文件怎么丢的我也不知道,以下是解决办法. -- 我的 mysql 版本为 5.6.x 压缩包版本,我的 mysql ...

  3. win7无法安装Microsoft .NET Framework 4.5\4.0

    在安装一些软件的时候,要求安装环境下必须首先安装有Microsoft .NET Framework 4.5\4.0,可是下载了安装包却怎么也安装不了,安装到一定进度就失败了,反复安装重启,都没有成功, ...

  4. 004androidStudio ndk开发环境

    004androidStudio ndk开发环境 android studio中编译C/C++源代码 1. 配置ndk.dir 在 local.properties 添加如下配置: sdk.dir=p ...

  5. 内存空间申请(C)

    标准C,C++: malloc----free new----delete WINDOWS API: gnew(.net) LocalAlloc----LocalFree GlobalAlloc--- ...

  6. java SAXReader

    使用SAXReader需要导入dom4j-full.jar包. dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的JavaXML API,具 ...

  7. 利用GetPrivateProfileString读取ini文件的字段

    //INIClass读取类 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

  8. OpenCV学习笔记七:opencv_nonfree模块

    一,简介: 顾名思义,这个模块不是free的.主要包含: 1,SIFT implementation. The class implements SIFT algorithm by D. Lowe. ...

  9. PHP中MVC的编程思想浅谈

    我相信这样的文章已经被写烂了,但是我今天还是愿意冒着风险把自己的经验与大家分享一下.纯属原创,我也没什么可保留,希望对新手有帮助,有说的什么不对的地方,欢迎大家伙吐槽. 什么是MVC? 简单的说就是将 ...

  10. android菜鸟学习笔记27----Fragment的简单使用

    1.Fragment的生命周期: 简单在新建一个MyFragment继承自Fragment,重写各个生命周期回调方法,各个方法中直接输出标识相关函数被调用的信息. 重写MainActivity的各个生 ...