Charts 工作表名称中的PHPexcel图表空间不工作
当我在工作表名称中留出一个空格时,图表开始产生错误 它起作用了Charts 工作表名称中的PHPexcel图表空间不工作,charts,phpexcel,Charts,Phpexcel,当我在工作表名称中留出一个空格时,图表开始产生错误 它起作用了 $heading = 'AB'; 问题:不工作为什么 $heading = 'A B'; //i want to give a space in sheet name how? 完整代码: $workbook = new PHPExcel(); $heading = 'AB'; $workbook->getActiveSheet()->setTitle($heading);
$heading = 'AB';
问题:不工作为什么
$heading = 'A B'; //i want to give a space in sheet name how?
完整代码:
$workbook = new PHPExcel();
$heading = 'AB';
$workbook->getActiveSheet()->setTitle($heading);
// Set document properties
$sheet = $workbook->getActiveSheet();
$sheet->fromArray(array(
array( '', 2010, 2011),
array('Q1', 12, 15),
array('Q2', 56, 73),
array('Q3', 52, 61),
array('Q4', 30, 32),
));
$labels = array(
new PHPExcel_Chart_DataSeriesValues('String', $heading.'!$B$1', null, 1),
new PHPExcel_Chart_DataSeriesValues('String', $heading.'!$C$1', null, 1),
);
$categories = array(
new PHPExcel_Chart_DataSeriesValues('String', $heading.'!$A$2:$A$5', null, 4),
new PHPExcel_Chart_DataSeriesValues('String', $heading.'!$A$2:$A$5', null, 4),
);
$values = array(
new PHPExcel_Chart_DataSeriesValues('Number', $heading.'!$B$2:$B$5', null, 4),
new PHPExcel_Chart_DataSeriesValues('Number', $heading.'!$C$2:$C$5', null, 4),
);
$series = new PHPExcel_Chart_DataSeries(
PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType
PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping
array(0, 1), // plotOrder
$labels, // plotLabel
$categories, // plotCategory
$values // plotValues
);
$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL);
$plotarea = new PHPExcel_Chart_PlotArea(null, array($series));
$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, null, false);
$chart = new PHPExcel_Chart(
'chart1', // name
null, // title
$legend, // legend
$plotarea, // plotArea
true, // plotVisibleOnly
0, // displayBlanksAs
null, // xAxisLabel
null // yAxisLabel
);
$chart->setTopLeftPosition('A7');
$chart->setBottomRightPosition('H20');
$sheet->addChart($chart);
$writer = PHPExcel_IOFactory::createWriter($workbook, 'Excel2007');
$writer->setIncludeCharts(TRUE);
header('Content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="polls_and_feedback_'.time().'.xlsx"');
$writer->save('php://output');
如果工作表名称包含空格等字符,则在单元格范围或类似区域中引用工作表时,需要将其用单引号括起来:例如
new PHPExcel_Chart_DataSeriesValues('String', "'".$heading."'".'!$B$1', null, 1),
使其内容如下:
'A B'!$B$1
否则它可能会非常混乱,因为如果工作表名称包含空格等字符,则表示当前工作表中a列与工作表中的
$B$1
相交(是的,空格字符实际上可以是MS Excel中的运算符!),然后,在单元格范围或类似区域中引用时,需要将其用单引号括起来:例如
new PHPExcel_Chart_DataSeriesValues('String', "'".$heading."'".'!$B$1', null, 1),
使其内容如下:
'A B'!$B$1
否则,它可能会非常混乱,因为您可能表示当前工作表中a列与工作表中的$B$1
相交(是的,空格字符实际上可以是MS Excel中的运算符!)