Bonjour,
j'ai voulu tester la manipulation d'Excel via COM en suivant le tuto de Stephane Eyskens http://stephaneey.developpez.com/tutoriel/php/phpexcel/ mais voilà, mon soucis est que Excel reste en mémoire.
J'ai testé plein de truc mais rien n'y fait et je dois tuer Excel dans le Task Manager.
Je suis en PhP 4.2, Windows 2K et Excel 2K (anglais).
Voici mon code, si qqun a une idée :
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
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
define("FILENAME","C:\\Developpement\\php\\Excel\\phpexcel.xls"); //constante: nom du fichier à générer
if(file_exists(FILENAME)){	//Suppression du fichier précédement créé
		unlink(FILENAME); //Suppression du fichier
	}
$excel=new COM("Excel.Application") or die("Impossible d'ouvrir Excel"); //Instanciation de l'objet COM
echo ("new COM");
//$excel->sheetsinnewworkbook=1;//1 seule feuille de calcul dans le document
$excel->Workbooks->Add();//Ajout d'un classeur
//$excel->visible=true;
echo ("<br>new book");
$book=$excel->Workbooks[1];//$book contient le classeur actif
$sheet=$book->Sheets[1];//$sheet contient la feuille active
echo ("<br>new sheet\n");
$sheet->Name="Test Excel";//Attribution d'un nom à la feuille
for ($i=1;$i<=10;$i++) {
	$cell=$sheet->Cells($i,1);//'A'.$i);
	$cell->value=$i;
	$cell->Font->ColorIndex = 41;//Coloration
	echo ("<br>A$i -> $i\n");
}
$book->SaveAs(FILENAME);//Sauvegarde du fichier
echo ("<br>save book en ".FILENAME);
$book->Close(false);
unset($cell);
unset($sheet);//Libération de $sheet
//$excel->Workbooks->Close();//Fermeture du classeur
unset($book);//Libération de $book
$excel->Quit;//On quitte Excel
unset($excel);//Libération de l'instance $excel
echo ("<br>Fin");
?>
</body>
</html>
Merci par avance.