Bonjour,

Je dois créer des rapports automatisés sur Excel via PHP à partir d'informations de base de données.

J'utilise la librairie PhpExcel.

Récupération des données ok !
Création du fichier Excel ok !
Transcription des données de la base et affichage dans le fichier excel ok !
Création de graphique ok !

Le problème coince au moment de la sélection des données à afficher dans les graphes.

Quand je sélectionne des données côtes à côtes tout va bien avec les ":" des formules classiques d'excel qui permettent de sélectionner plusieurs valeurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
<?php
$xAxisTickValues1 = array(
new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$A$1:$C$1', NULL, 3),
);?>
Mon problème est pour sélectionner plusieurs valeurs qui ne sont pas côtes à côtes... exemple Cellule A1, Cellule B10 et Cellule C13 donc en gros Feuil1!$A$1, Feuil1!$B$10, Feuil1!$C$13

J'ai essayé avec le code suivant mais il n'affiche que la première valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$dataSeriesLabels1 = array(
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$A$1', NULL, 1),
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$B$10', NULL, 1),
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$C$13', NULL, 1),
);
 
$xAxisTickValues1 = array(
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$A$1', NULL, 1),
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$B$10', NULL, 1),
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$C$13', NULL, 1),
);
 
$dataSeriesValues1 = array(
	new PHPExcel_Chart_DataSeriesValues('Number', 'Feuil1!$A$1', NULL, 1),
	new PHPExcel_Chart_DataSeriesValues('Number', 'Feuil1!$B$10', NULL, 1),
	new PHPExcel_Chart_DataSeriesValues('Number', 'Feuil1!$C$13', NULL, 1),
);

Le code de la partie graphique pour générer un camembert qui fonctionne avec les cellules voisines.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$dataSeriesLabels1 = array(
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$A$1:$C$1', NULL, 1),
);
 
$xAxisTickValues1 = array(
	new PHPExcel_Chart_DataSeriesValues('String', 'Feuil1!$A$1:$C$1', NULL, 3),
);
 
$dataSeriesValues1 = array(
	new PHPExcel_Chart_DataSeriesValues('Number', 'Feuil1!$A$2:$C$2', NULL, 3),
);
 
$series1 = new PHPExcel_Chart_DataSeries(
	PHPExcel_Chart_DataSeries::TYPE_PIECHART, // plotType
	NULL,                           // plotGrouping
	range(0, count($dataSeriesValues1)-1),      // plotOrder
	$dataSeriesLabels1,             // plotLabel
	$xAxisTickValues1,              // plotCategory
	$dataSeriesValues1              // plotValues
);?>
Merci d'avance

Guillaume