我想以以下格式使用PHPEXCEL写入csv文件。班级以粗体显示,每个班级后面都有空格。



但是我还没有找到一种方法。

这是我能做的。



我从sql生成数据并循环认为。这是我的代码

$sql="SELECT * FROM table ORDER BY typeclass";
$query=mysql_query($sql);

$check='';
$i=1;
while($row=mysql_fetch_assoc($query))
{
    if($row['class']!=$check)
    {
        $objPHPExcel->getActiveSheet()->setCellValue('A'.$i,$row['Class']);
        $check=$row['class'];
    }

    $objPHPExcel->getActiveSheet()->setCellValue('B' .$i,$row['Name']);
    $objPHPExcel->getActiveSheet()->setCellValue('C' .$i,$row['score']);

    $i++;
}


谁能帮助我获得所需的输出。

最佳答案

如何格式化单元格粗体:

$styleArray = array('font' => array('bold' => true));

$objPHPExcel->getActiveSheet()->getStyle('A1')->applyFromArray($styleArray);


您可以在插入类名之后插入新的行。

 if($row['class']!=$check)
 {
        $objPHPExcel->getActiveSheet()->setCellValue('A'.$i,$row['Class']);
        $check=$row['class'];

        // Merge the cells with the class name
        $objPHPExcel->getActiveSheet()->mergeCells('A'.$i.':B'.$i);

        $i++; // Next Row
 }


然后,您可以将名称和分数放入A和B列:

$objPHPExcel->getActiveSheet()->setCellValue('A' .$i,$row['Name']);
$objPHPExcel->getActiveSheet()->setCellValue('B' .$i,$row['score']);


那应该可以解决所有问题。对于使用PHPEXCEL的其他问题,您可以通过电子邮件与我联系。

顺便说一句,可怜的西蒙:(

关于php - PHPEXCEL行布局,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13289869/

10-12 06:08