如何在多个表中添加一个模板phpspreadsheet

问题描述 投票:0回答:1

[我正在使用phpspreadsheet,我需要两张名为3rd5th的工作表,但是每当我在第二张工作表中加载excel工作表时,整个电子表格都会被新的电子表格替换。

我在互联网上找到了,但没有找到类似的问题,所以我发布了这个问题。

code

$this->spreadsheet = new Spreadsheet();
$reader = IOFactory::createReader('Xlsx');
$this->spreadsheet = $reader->load('../images/excel.xlsx');
$this->spreadsheet->setActiveSheetIndex(0)->setTitle('3rd');
$this->spreadsheet->createSheet()->setTitle('5th');
$this->spreadsheet->setActiveSheetIndex(1);
$reader = IOFactory::createReader('Xlsx');
$this->spreadsheet = $reader->load('../images/excel.xlsx');

如何在两个工作表中加载相同的excel模板?

php phpexcel phpspreadsheet
1个回答
0
投票

[不知道如何将一个模板加载到多张纸上,但是根据phpspreadsheet的文档,您可以在加载模板后克隆它。

$this->spreadsheet = new Spreadsheet();
// COPY TEMPLATE INTO FIRST SHEET
$reader = IOFactory::createReader('Xlsx');
$this->spreadsheet = $reader->load('../images/excel.xlsx');
$this->spreadsheet->setActiveSheetIndex(0)->setTitle('3rd');
// CLONE FIRST SHEET
$clone = clone $this->spreadsheet->getSheetByName('3rd');
$clone->setTitle('5th');
$this->spreadsheet->addSheet($clone);

希望您喜欢我的替代答案。

© www.soinside.com 2019 - 2024. All rights reserved.