Mon problème vient d'être résolu, c'était un problème de droits d'accès sur le serveur de la société.
Par contre j'ai un méga souci de codage et je voudrais savoir si je peux t'enquiquiner un instant.
Je souhaiterais mettre le code ci-dessous en php pour automatiser l'extration et le remplissage de la feuille excel via un bouton.
<?php
define("FILENAME","C:\flap.xls");
/*
Cette fonction initialise le fichier excel */
function initExcelFile($data){
if(file_exists(FILENAME))
{
unlink(FILENAME);
}
$excel=new COM("Excel.application");//Instanciation de l'objet COM
$excel->sheetsinnewworkbook=1;//Une seule feuille dans le document
$excel->Workbooks->Add();//Ajout d'un classeur
$book=$excel->Workbooks(1);//$book contient le classeur actif
$sheet=$book->Worksheets(1);//$sheet contient la feuille active
$sheet->Name="FlapRequete";//Attribution d'un nom à la feuille
//Attention cette partie du code n'est pas totalement PHP,
//j'ai bricolé juste pour montrer la façon de faire la boucle
--------------------------------------------------------------------
while(data.next()){
int numero=0; //Si on peut recuperer les cellules par le numero au lieu de la lettre
$cell=$sheet->Range(numero);
$cell->value=data.titre; //Titre de mes colonnes
$cell->Font->ColorIndex=2; //couleur du texte
$cell->Interior->ColorIndex=7; //Couleur de fond de cellule
$cell->Font->bold = true; // On met en gras
$cell->Font->Italic= true; // On met en italique
$cell->Font->Size = 11; // Taille 15
$cell->Borders->LineStyle=9; // Encadré double
$cell->EntireColumn->ColumnWidth=15; // On met une largeur de colonne précise
numero=numero+1;
}
-------------------------------------------------------------------------
$book->saveas(FILENAME);//Enregistrement du document
unset($sheet);//Libération de $sheet
unset($book);//Libération de $book
$excel->Workbooks->Close();//Fermeture du classeur
$excel->Quit();//On quitte Excel
unset($excel);//Libération de l'objet $excel
}
/**
*Cette fonction remplit le fichier excel
*/
function fillExcelFile($data){
if(file_exists(FILENAME))
{
unlink(FILENAME);
}
$excel=new COM("Excel.application");//Instanciation de l'objet COM
$book=$excel->Workbooks(1);//$book contient le classeur actif
$sheet=$book->Worksheets(1);//$sheet contient la feuille active
//Attention cette partie du code n'est pas totalement PHP, j'ai bricolé juste pour montrer la façon de faire la boucle
--------------------------------------------------------------------
while(data.next()){
$cell=$sheet->Range(numero)->celluleSuivante; //Je recupere la celle suivante à chaque fois pour ecrire la donnée suivante
$cell->value=data.champCible; //Donnees dans la colonne
}
--------------------------------------------------------------------
$book->saveas(FILENAME);//Enregistrement du document
unset($sheet);//Libération de $sheet
unset($book);//Libération de $book
$excel->Workbooks->Close();//Fermeture du classeur
$excel->Quit();//On quitte Excel
unset($excel);//Libération de l'objet $excel
}
--------------------------------------------------------
Clique sur le bouton
-----------------------------------------------------------------------------------------
//Recuperation des données dans la base
$data=findData(parametres);
//Initialisation des entetes du fichier excel
initExcelFile($data);
//Remplissage du fichier Excel
fillExcelFile($data);
?>