Проблемы с рисованием и формулой в PHPSpreadsheet при изменении шаблона XLSXPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Проблемы с рисованием и формулой в PHPSpreadsheet при изменении шаблона XLSX

Сообщение Anonymous »

Я работаю с уже существующим шаблоном книги XLSX, который содержит несколько листов и определенные диаграммы. Когда я читаю шаблон и пытаюсь записать в него данные, я сталкиваюсь с несколькими проблемами, а именно:
Проблемы с рисованием: я получаю ошибки, связанные с файломsheet15.xml, который влияет на рендеринг диаграммы и фигуры.
Проблемы с формулами. У меня также возникают проблемы с формулами в файлеsheet13.xml, из-за которых они не вычисляются правильно или выдают ошибки.
Я был бы признателен за любые рекомендации по решению этих проблем. Существуют ли в PHPSpreadsheet конкретные методы или рекомендации, которым мне следует следовать, чтобы обеспечить целостность рисунков и формул при изменении шаблона?
Спасибо!
сначала прочитайте шаблон, затем выполните некоторые операции и, наконец, запишите измененные данные обратно в шаблон.
require 'vendor/autoload.php'; // Include Composer's autoload file

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Style\Border;
use PhpOffice\PhpSpreadsheet\Style\Fill;
use PhpOffice\PhpSpreadsheet\Style\Color;
use PhpOffice\PhpSpreadsheet\Style\Alignment;
use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
use PhpOffice\PhpSpreadsheet\Worksheet\PageSetup;
use PhpOffice\PhpSpreadsheet\RichText\RichText;
use PhpOffice\PhpSpreadsheet\Chart\Chart;
use PhpOffice\PhpSpreadsheet\Chart\DataSeries;
use PhpOffice\PhpSpreadsheet\Chart\DataSeriesValues;
use PhpOffice\PhpSpreadsheet\Chart\PlotArea;
use PhpOffice\PhpSpreadsheet\Chart\Legend as ChartLegend;
use PhpOffice\PhpSpreadsheet\Chart\Title;
use PhpOffice\PhpSpreadsheet\Worksheet\Drawing;
use PhpOffice\PhpSpreadsheet\Worksheet\MemoryDrawing;
use PhpOffice\PhpSpreadsheet\Calculation\Calculation;
$FileName="Template/Management_account_v9.xlsx";
$inputFileType = 'Xlsx';
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader($inputFileType);
$reader->setIncludeCharts(true);
$objPHPExcel = $reader->load($FileName);
$calculationEngine = Calculation::getInstance($objPHPExcel);
$calculationEngine->flushInstance();

// some perations here code

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8');
header('Content-Disposition: attachment;filename="Management Report'.substr($budget_year,2).str_pad($month_expense, 2, "0", STR_PAD_LEFT).'.xlsx"');
//header('Content-Disposition: attachment;filename="Management Report.xlsx"');
header('Cache-Control: max-age=0');
include $this->config->item('include_path').'controllers/clean_buffer.php';
$objWriter = IOFactory::createWriter($objPHPExcel, 'Xlsx');
$objWriter->setIncludeCharts(TRUE);

$objWriter->save('php://output');
$objPHPExcel->disconnectWorksheets();
unset($objPHPExcel);
exit;


Подробнее здесь: https://stackoverflow.com/questions/791 ... x-template
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»