【问题标题】:phpexcel set data type on range of cellsphpexcel在单元格范围内设置数据类型
【发布时间】:2011-02-09 11:34:11
【问题描述】:

PHPExcel,我正在使用:

$workSheet->fromArray($array);

设置我的数据。但是,需要将一列设置为字符串(带有前导零的数字,如果不设置为字符串,则前导零会被截断)。如果我没有使用fromArray 方法,我可以使用PHPExcel_Worksheet::setCellValueExplicit() 设置数据类型。

但是,我想使用一系列列来执行此操作。理想情况下是这样的:

$worksheet->getCell('A1:A50')->setDataType(PHPExcel_Cell_DataType::TYPE_STRING);

但是查看代码,getCell 不允许范围,只有一个单元格。我该怎么做?

【问题讨论】:

    标签: php phpexcel


    【解决方案1】:

    目前在 PHPExcel 中没有允许您为一系列单元格设置数据类型的方法,只能为单个单元格设置数据类型。

    有几个选项...更难的是编写一个自定义单元格值绑定器,当单元格值由 fromArray() 设置时,它会自动将这些单元格的数据类型设置为字符串。

    您可以做的(并且更容易)是将数据类型保留为数字,将值保留为数字,但设置数字格式掩码,告诉 Excel 显示带有前导零的数字。

    $objPHPExcel->getActiveSheet()->getStyle('L3:N2048')
                                  ->getNumberFormat()->setFormatCode('0000');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多