【发布时间】:2019-09-20 13:24:04
【问题描述】:
最近我使用phpExcel 库在 cakephp 中生成 excel 格式的报告。除了数据透视表,一切都运行良好。
我正在使用主 excel 表(包含数据透视表)来克隆/生成其他 excel 表。在新生成的工作表中,其他信息看起来不错,但没有生成数据透视表(仅显示标题上的名称。没有过滤器选项)。这是我正在使用的代码。
$filename = WWW_ROOT."files/master_report_template/compliance_workflow_master_template.xlsx";
$reportFileName = WWW_ROOT."files/documents/reports/compliance_workflow_template.xlsx";
$this->PhpExcel->loadWorksheet($filename);
$this->PhpExcel->getActiveSheet()->setCellValue('B1',$this->request->data['fromDate']);
$this->PhpExcel->getActiveSheet()->setCellValue('B2',$this->request->data['toDate']);
$this->PhpExcel->getActiveSheet()->setCellValue('B3',date('D-M-y'));
$row=6;
foreach($repostData as $rows)
{
$col = 0;
foreach($rows as $key =>$value)
{
$this->PhpExcel->getActiveSheet()->setCellValueExplicitByColumnAndRow($col, $row, $value);
$col++;
}
$row++;
}
$this->PhpExcel->save($reportFileName);
$this->PhpExcel->output();
我认为生成的 excel 表将是 Master excel 表的克隆,但两者都不相同(由于数据透视表)。有没有好的教程或文档来生成数据透视表?
【问题讨论】:
-
github 上有一个用于数据透视表的 PR,但它需要一些额外的工作才能发布,因为带有样式的数据透视表将无法保存,它只有在定义的数据透视表中没有样式时才有效
-
@MarkBaker 用户 vlasvlasvlas 对“github 上数据透视表 PR”的链接感兴趣(但不能自己发表评论)。
-
它是PR #226:但是,它仅适用于 OfficeOpenXML (.xlsx) 文件,并且如果在数据透视表中应用了任何样式,它将不起作用(正如我之前所说)