如何获得正确的Cell Coordinate值

时间:2014-11-07 16:07:05

标签: php phpexcel

我正在尝试将我的Excel工作表行设置为某个列。 列数根据应用程序动态更改。 我可以通过计算数组大小来计算列数,如

$ColSize = sizeOf(excel_out)  

现在我想像这样设计它

for ($i= 0 ; $i<= $highestRow;$i++)
    {
        if ($objPHPExcel->getActiveSheet()->getCell('A'.$i)->getValue() == 'Responses')
        {
            $objPHPExcel->getActiveSheet()->getStyle('A'.$i.':'.$ColSize.$i)->applyFromArray($Heading2Style);


        }
    }

但它给出的错误是“无效的单元格坐标”我猜它没有得到列的字母数,它只是得到每个单元格的数值如 例如:21 =&gt; B1      31 =&GT; C1 。我怎样才能得到正确的坐标值?

2 个答案:

答案 0 :(得分:2)

$ ColSize有什么用途?也许你需要使用:

 $columnString=PHPExcel_Cell::stringFromColumnIndex($ColSize);
 $objPHPExcel->getActiveSheet()->getStyle('A'.$i.':'.$columnString.$i)->applyFromArray($Heading2Style);

答案 1 :(得分:1)

使用PHPExcel_Cell类的静态$ColSize辅助方法将stringFromColumnIndex()转换为alpha列地址值

$objPHPExcel->getActiveSheet()
    ->getStyle('A' . $i . ':' . PHPExcel_Cell::stringFromColumnIndex($ColSize) . $i)
    ->applyFromArray($Heading2Style);