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. 如何实现uboot和linux之间的参数传递

    参考http://cgxcn.blog.163.com/blog/static/132312422009101133251202/ 参考:http://blog.chinaunix.net/uid-1 ...

  2. abp使用风格定义

    一个开发人员的开发模式下面.用这个有太多代码要写了.所以需要限制与规范自己: 基于abp新系统的开发过程1>*.Core 增加文件夹eg:Questions1.1>增加实体文件eg:QAQ ...

  3. 挂载samb目录

    不管是ubuntu还是fedora文件管理器都带有挂载浏览smb目录的工具,但是我却找不到它的挂载点,所以想用命令行拷贝东西就没办法了,还是需要使用传统的挂载方式, mount -t cifs -o ...

  4. azure iothub create-device-identity样例报错: unable to find valid certification path ,及iothub-explorer Error: CERT_UNTRUSTED

    https://docs.microsoft.com/zh-cn/azure/iot-hub/iot-hub-java-java-getstarted 在IDEA中执行上述的代码,会出现下面的报错信息 ...

  5. PAT trie

    最近在上计算机应用编程,老师给了一个大小为900MB的含20000000行邮箱地址的文件. 然后再给出了1000条查询数据,让你用字典树建树然后查询是否出现过. 试了下普通的tire树,特意用二进制写 ...

  6. 【BZOJ5055】膜法师 树状数组

    [BZOJ5055]膜法师 Description 题目描述 在给定的维度序列a中, 求出所有满足i<j<k且ai<aj<ak的ai*aj*ak的和 即 ∑ (a_i*a_j* ...

  7. 【BZOJ2819】Nim 树状数组+LCA

    [BZOJ2819]Nim Description 著名游戏设计师vfleaking,最近迷上了Nim.普通的Nim游戏为:两个人进行游戏,N堆石子,每回合可以取其中某一堆的任意多个,可以取完,但不可 ...

  8. libnids介

    转自:http://blog.chinaunix.net/uid-22832715-id-2111578.html Libnids开发包介绍     Libnids是一个用于网络入侵检测开发的专业编程 ...

  9. 1400 序列分解(dfs)

    1400 序列分解 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 小刀和大刀是双胞胎兄弟.今天他们玩一个有意思的游戏. 大刀给小刀准备了一个长度为n的整数序列.小 ...

  10. 客户端-服务器通信安全 sign key

    API接口签名校验,如何安全保存appsecret? - 知乎  https://www.zhihu.com/question/40855191 要保证一般的客户端-服务器通信安全,可以使用3个密钥. ...