При создании диаграммы в электронной таблице с использованием Spreadsheet :: WriteExcel создаваемый файл продолжает выдавать сообщение об ошибке
Excel обнаружил нечитаемый контент в "Report.xls"
и спрашивает меня, хочу ли я его восстановить. Я понял, что проблемная строка в коде - то, где я фактически вставляю диаграмму, с
$chartworksheet->insert_chart(0, 0, $linegraph, 10, 10);
Если я закомментирую эту строку, с данными все в порядке (но, конечно, диаграммы нет). Остальная часть соответствующего кода выглядит следующим образом (любые переменные, не определенные здесь, определены ранее в коде, например $lastrow
).
printf("Creating\n");
my $chartworksheet = $workbook->add_worksheet('Graph');
my $linegraph = $workbook->add_chart(type => 'line', embedded => 1);
$linegraph->add_series(values => '=Data!$D$2:$D$lastrow', name => 'Column1');
$linegraph->add_series(values => '=Data!$E$2:$E$lastrow', name => 'Column2');
$linegraph->add_series(values => '=Data!$G$2:$G$lastrow', name => 'Column3');
$linegraph->add_series(values => '=Data!$H$2:$H$lastrow', name => 'Column4');
$linegraph->set_x_axis(name => 'x-axis');
$linegraph->set_y_axis(name => 'y-axis');
$linegraph->set_title(name => 'title');
$linegraph->set_legend(position => 'bottom');
$chartworksheet->activate();
$chartworksheet->insert_chart(0, 0, $linegraph, 10, 10);
printf("Finished\n");
Я в полной растерянности и не могу найти никаких ответов. Помогите пожалуйста!