Почему мой Perl-код перезаписывает расположение моего значения в электронной таблице?
Я пытаюсь создать диаграмму в электронной таблице (используя Spreadsheet::Write
). Я только хочу поставить 1 категорию и 1 значение, но каким-то образом значение, ну, мое "значение" перезаписывается.
Я добавляю серию так:
my $chart = $workbook->add_chart( type => 'column', embedded => 1 );
$chart->add_series(
categories => '='.$worksheet->get_name().'!$A$'.$aecCells[0],
values => '='.$worksheet->get_name().'!$B$'.$aecCells[0],
name => $aecParams[0],
);
print "\n--->".$aecCells[0];
$chart->set_title (name => 'Plots');
$worksheet->insert_chart('I2', $chart );
Технически, это должно взять значение из Bx
клетка, но это не так:/, он берет один из Ax
... который на самом деле не числовое значение, а строка, поэтому я получаю бесполезный график.
Есть идеи, что я делаю не так?
1 ответ
Поместите имя листа в кавычки и используйте диапазоны ячеек, чтобы решить вашу проблему:
$chart->add_series(
categories => '=\''.$worksheet->get_name().'\'!$A$1:$A$'.$aecCells[0],
values => '=\''.$worksheet->get_name().'\'!$B$1:$B$'.$aecCells[0],
name => $aecParams[0],
);