0

我想使用 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++;                   
}

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

4

1 回答 1

1

如何格式化单元格粗体:

$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 的更多问题,您可以通过电子邮件与我联系。

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

于 2012-11-08T13:53:57.960 回答