Génération de fichier xls en php

WRInaute passionné
Bonjour,

j'ai un script qui doit générer un fichier Excel de type xls.
Voici mon code :

Code:
$file_export = "fileXls_".date('YmdHis').".xls";
$flux_export = fopen($file_export, "x+");

$array_entete = array('nom','prenom', ...);
fputcsv($flux_export, $array_entete);

/* TRAITEMENT MySQL */

$array_data[] = $nom;
$array_data[] = $prenom;
$array_data[] = ...;

fputcsv($flux_export, $array_data);
fclose($flux_export);

le ficher xls est bien généré, mais quand je l'ouvre il a le format d'un csv, avec le séparateur virgule. J'aimerais vraiment avoir un fichier excel avec des colonnes ...

fputcsv n'est pas compatible ???

Merci à vous
 
WRInaute accro
sinon, tu peux le créer au format sylk avec l'extension xls, comme çe en double cliquant tu l'ouvriras dans excel
 
WRInaute passionné
j'ai fait encore plus simple :
Code:
fputcsv($flux_export, $array_data, "\t");
avec le séparateur tabulation : rien de plus simple !

Dernier souci : le premier 0 pour les CP des 9 premiers départements : comment forcer l'affichage du 0 automatiquement ? le fichier xls est bien généré avec un 0 mais lors de l'ouverture il ne figure pas ! je sais qu'on peut l'afficher avec format de cellule > personnalisé mais je vais vraiment qq ch d'automatique

Une idée ?
 
WRInaute accro
il faut le mettre au format texte. Et pour ça, le csv ne suffit plus, alors qu'avec le sylk on peut paramétrer le format de cellules. en plus, c'est un format ouvert, qui peut être lu par n'importe quel tableur
 
WRInaute passionné
encore plus simple messieurs dames :
en un coup
Code:
$array_data[] = '="'.$CP.'"';

le compte est bon ^^
 
WRInaute accro
sauf que tu es obligé d'importer ce fichier depuis excel, alors qu'avec un format sylk et une extension xls, un clic dessus l'ouvrira directement dans excel (ou dans Ooo)
 
WRInaute passionné
non ce que tu dis est également faisable facilement avce un header application vns-excel un truc du genre (testé et ça marche)
 
WRInaute accro
oui, mais, en général, un fichier xls/doc, je le sauvegarde sur mon pc et je l'ouvre ensuite, histoire de pouvoir le sauver où je souhaite et pouvoir le modifier. Le header ne servant que lors d'un "ouvrir" directement depuis le navigateur
 
Discussions similaires
Haut