[PHP] Export Excel
Résolu/Fermé
sion76
Messages postés
26
Date d'inscription
dimanche 5 juillet 2009
Statut
Membre
Dernière intervention
6 novembre 2009
-
22 oct. 2009 à 10:18
320C Messages postés 93 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 15 janvier 2014 - 19 août 2013 à 16:10
320C Messages postés 93 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 15 janvier 2014 - 19 août 2013 à 16:10
Bonjour,
j'exporte un tableau créé à partir de requêtes SQL dans un fichier excel (qui n'existe pas encore). Tout se passe niquel, bien rangé en colonnes avec entêtes etc. Le problème c'est le format de mes colonnes. J'en ai une où la donnée est du genre 12000012324564123456. Donc il me le simplifie en affichant 1,20000+18 . Je sais régler ce problème manuellement sur Excel (quand même :p) mais ce que je voudrais arriver à paramétrer, c'est le format des données et des colonnes (la largeur de la colonne et le format du nombre précisément).
J'utilise la méthode header pour mon export. Quelqu'un pourrait-il me conseiller? Merci
j'exporte un tableau créé à partir de requêtes SQL dans un fichier excel (qui n'existe pas encore). Tout se passe niquel, bien rangé en colonnes avec entêtes etc. Le problème c'est le format de mes colonnes. J'en ai une où la donnée est du genre 12000012324564123456. Donc il me le simplifie en affichant 1,20000+18 . Je sais régler ce problème manuellement sur Excel (quand même :p) mais ce que je voudrais arriver à paramétrer, c'est le format des données et des colonnes (la largeur de la colonne et le format du nombre précisément).
J'utilise la méthode header pour mon export. Quelqu'un pourrait-il me conseiller? Merci
A voir également:
- [PHP] Export Excel
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Déplacer une colonne excel - Guide
- Comment calculer la moyenne sur excel - Guide
4 réponses
sion76
Messages postés
26
Date d'inscription
dimanche 5 juillet 2009
Statut
Membre
Dernière intervention
6 novembre 2009
1
23 oct. 2009 à 11:01
23 oct. 2009 à 11:01
Up! Y a plus personne sur le forum??
Zep3k!GnO
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
200
23 oct. 2009 à 15:03
23 oct. 2009 à 15:03
https://openclassrooms.com/fr/courses
Y a pas pour le format mais en trifouillant sur google tu devrais rapidement trouver, moi j'ai trouvé ce lien en 1 minute....
Y a pas pour le format mais en trifouillant sur google tu devrais rapidement trouver, moi j'ai trouvé ce lien en 1 minute....
sion76
Messages postés
26
Date d'inscription
dimanche 5 juillet 2009
Statut
Membre
Dernière intervention
6 novembre 2009
1
26 oct. 2009 à 11:03
26 oct. 2009 à 11:03
Merci c'est sympa. Le problème de leur méthode, c'est qu'eux n'utilisent pas vraiment de bdd, et mes header marchent si bien avec ma bdd que j'hésite un peu à changer de méthode (surtout quand je vois leurs boucles) enfin bon, je suis peut être un peu faignant, je vais regarder ça de plus près, merci encore!
(mais si quelqu'un à la solution pour l'autofit des colonnes avec la méthode header je prends toujours :p)
(mais si quelqu'un à la solution pour l'autofit des colonnes avec la méthode header je prends toujours :p)
Bonjour,
peux tu montrer ton code car je trouve des problemes pour la fonction saveas
voici mon code:
$chemin_act = getcwd();
// On définie une constante FILENAME comprenant le nom du fichier à générer et son emplacement.
define("FILENAMEREC",$chemin_act."\recettes.xls");
if(file_exists(FILENAMEREC)) // On vérifie que le fichier existe.
{
unlink(FILENAMEREC); // Suppression du fichier précédemment créé s'il existe.
}
$excel=new COM("Excel.application"); //Instanciation de l'objet COM
$excel->sheetsinnewworkbook=1;//1 seule feuille de calcul 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 (comme son nom l'indique, feuille en anglais)
$sheet->Name="stati";//Attribution d'un nom à la feuille
$cell=$sheet->Range('A1');
$cell->value='TRIMESTRE'; //Titre de mes colonnes
$cell->EntireColumn->AutoFit;
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('B1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-1'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('C1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-2'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('D1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-3'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('E1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-4'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('A2');
$cell->value= 'Privé & Semi-Public';
$cell->EntireColumn->AutoFit;
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('A3');
$cell->value= 'Public';
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('A4');
$cell->value= 'Université';
$cell->Font->bold = true; //Met en gras le texte (bold)
$trimestre = "BCDE";
$lg_priv_sp = 2;
$lg_pub = 3;
$lg_univ = 4;
for($i=0; $i<4; $i++)
{
$cell=$sheet->Range($trimestre[$i].$lg_priv_sp);
$cell->value= $som_com[$i];
$cell=$sheet->Range($trimestre[$i].$lg_pub);
$cell->value= $som_adm[$i];
$cell=$sheet->Range($trimestre[$i].$lg_univ);
$cell->value= $som_univ[$i];
} // for($i=0; $i<4; $i++)
$book->saveas(FILENAMEREC);//Sauvegarde du fichier
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'instance $excel
peux tu montrer ton code car je trouve des problemes pour la fonction saveas
voici mon code:
$chemin_act = getcwd();
// On définie une constante FILENAME comprenant le nom du fichier à générer et son emplacement.
define("FILENAMEREC",$chemin_act."\recettes.xls");
if(file_exists(FILENAMEREC)) // On vérifie que le fichier existe.
{
unlink(FILENAMEREC); // Suppression du fichier précédemment créé s'il existe.
}
$excel=new COM("Excel.application"); //Instanciation de l'objet COM
$excel->sheetsinnewworkbook=1;//1 seule feuille de calcul 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 (comme son nom l'indique, feuille en anglais)
$sheet->Name="stati";//Attribution d'un nom à la feuille
$cell=$sheet->Range('A1');
$cell->value='TRIMESTRE'; //Titre de mes colonnes
$cell->EntireColumn->AutoFit;
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('B1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-1'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('C1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-2'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('D1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-3'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('E1');
$cell->EntireColumn->AutoFit; // La largeur de la colonne s'adapte en fonction de l'intérieur de la cellule
$cell->value='T-4'; //Nombre de questions qu'on a posées
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('A2');
$cell->value= 'Privé & Semi-Public';
$cell->EntireColumn->AutoFit;
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('A3');
$cell->value= 'Public';
$cell->Font->bold = true; //Met en gras le texte (bold)
$cell=$sheet->Range('A4');
$cell->value= 'Université';
$cell->Font->bold = true; //Met en gras le texte (bold)
$trimestre = "BCDE";
$lg_priv_sp = 2;
$lg_pub = 3;
$lg_univ = 4;
for($i=0; $i<4; $i++)
{
$cell=$sheet->Range($trimestre[$i].$lg_priv_sp);
$cell->value= $som_com[$i];
$cell=$sheet->Range($trimestre[$i].$lg_pub);
$cell->value= $som_adm[$i];
$cell=$sheet->Range($trimestre[$i].$lg_univ);
$cell->value= $som_univ[$i];
} // for($i=0; $i<4; $i++)
$book->saveas(FILENAMEREC);//Sauvegarde du fichier
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'instance $excel
320C
Messages postés
93
Date d'inscription
dimanche 24 avril 2011
Statut
Membre
Dernière intervention
15 janvier 2014
19 août 2013 à 16:10
19 août 2013 à 16:10
Salut
Il y a aussi cette préoccupation qui me dérange, si vous voudriez bien m'indiquer comment faire pour générer aussi un fichier excel à partir d'un tableau en html
et mon soucis et si tu voudrais bien me faire connaissance de cela, est de faire cette exportation
Merci pour ton aide guelbe
Il y a aussi cette préoccupation qui me dérange, si vous voudriez bien m'indiquer comment faire pour générer aussi un fichier excel à partir d'un tableau en html
et mon soucis et si tu voudrais bien me faire connaissance de cela, est de faire cette exportation
Merci pour ton aide guelbe