Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1850 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  ALT + ENTREE en PHP pour Excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

ALT + ENTREE en PHP pour Excel

n°1611083
redah75
Posté le 12-09-2007 à 16:02:55  profilanswer
 

Bonjour tt le monde, j'espere que vous avez passe de bonnes vacances... :)
 
j'ai reussi a exporter des donnes de ma base de donnees vers Excel en utilisant PHP :
 
fputs("nom_fichier", "Valeur\t" );
fputs($my_file, "\n" ); // pour une nouvelle ligne
...
 
Je me casse la tete depuis ce matin pour inserer un retour a la ligne mais dans la meme cellule, equivalent de ALT + ENTREE mais je n'y arrive pas !!! :( auriez vous une idee svp?
 
Merci bien,
Reda

mood
Publicité
Posté le 12-09-2007 à 16:02:55  profilanswer
 

n°1611134
zapan666
Tout est relatif
Posté le 12-09-2007 à 17:49:21  profilanswer
 

\r ?


---------------
my flick r - Just Tab it !
n°1611145
redah75
Posté le 12-09-2007 à 18:10:37  profilanswer
 

non, \r et \n reviennent a une nouvelle ligne...
 
j'aimerais revenir a la ligne mais dans la meme cellule!!

n°1611155
IrmatDen
Posté le 12-09-2007 à 18:37:26  profilanswer
 

Salut,

 

Si on exporte en xml, on peut voir que le code suivant est utilisé en tant que retour à la ligne:


J'espère que ça marchera dans ton cas.


Message édité par IrmatDen le 12-09-2007 à 18:37:43
n°1611158
redah75
Posté le 12-09-2007 à 18:43:12  profilanswer
 

Bonjour, et merci pour vos reponses!!!
 
je viens de tester 
 mais ca ne marche pas, peux etre que je ne l'utilise pas de la bonne maniere!!! : fputs("nom_fichier", "Valeur1ereLigne
Valeur2emeLigne\t" );

n°1611160
redah75
Posté le 12-09-2007 à 18:44:46  profilanswer
 

ou est ce que ma page devrait etre en xml???

n°1611162
IrmatDen
Posté le 12-09-2007 à 18:51:50  profilanswer
 

Tu sauvegardes dans quel format?

n°1611167
IrmatDen
Posté le 12-09-2007 à 19:09:35  profilanswer
 

Pour préciser un peu plus, il faut que la cellule où tu veux ce format ait un style possédant l'attribut WrapText.
En XML, ça donne ça:

Code :
  1. <Style ss:ID="s62">
  2.   <Alignment ss:Vertical="Bottom" ss:WrapText="1"/>
  3.  </Style>
  4. [snip...]
  5.   <Row ss:AutoFitHeight="0">
  6.    <Cell ss:StyleID="s62"><Data ss:Type="String">test&#10;rettest</Data></Cell>
  7.   </Row>

n°1611169
WiiDS
20 titres en GC, 0 abandon, 0 DQ
Posté le 12-09-2007 à 19:12:29  profilanswer
 

redah75 a écrit :

Bonjour, et merci pour vos reponses!!!
 
je viens de tester &#10; mais ca ne marche pas, peux etre que je ne l'utilise pas de la bonne maniere!!! : fputs("nom_fichier", "Valeur1ereLigne&#10;Valeur2emeLigne\t" );


fputs("nom_fichier", "Valeur1ereLigne\x10Valeur2emeLigne\t" );
 
?


---------------
"I can cry like Roger. It's just a shame I can't play like him" - Andy Murray, 2010
n°1611291
redah75
Posté le 13-09-2007 à 11:28:02  profilanswer
 

Bonjour et encore merci pour vos reponses,
 
IrmatDen: je sauvegarde au format xls et ma page qui genere le fichier xls est purement en HTML ET PHP, je ne connais rien en xml :(
je ne vois pas trop comment je peux utiliser le bout de code css que tu m'as donne!!
 
WiiDS: j'ai essaye \x10 mais ca donne rien, il m'insere un caracter bizarre au lieu du saut de ligne... :( g egalement essaye \c13, en vain!

mood
Publicité
Posté le 13-09-2007 à 11:28:02  profilanswer
 

n°1611292
redah75
Posté le 13-09-2007 à 11:28:26  profilanswer
 

\x13, pas c13, desole :D

n°1611335
Soileh
Lurkeur professionnel
Posté le 13-09-2007 à 13:04:10  profilanswer
 

:hello:  !

 

J'avais aussi ce problème pour générer un fichier .csv avec des cellules sur plusieurs lignes.

 

En fouillant sur Internet, j'ai trouvé la solution ^^

 

Pour créer une cellule sur plusieurs lignes, il faut tout simplement encadrer le texte de ta cellule par des guillemets ", et utiliser \n pour sauter une ligne.

 

J'espère que ça fonctionne de la même manière pour un fichier .xls  :??:

 

:jap:


Message édité par Soileh le 13-09-2007 à 14:03:20
n°1611345
CyberDenix
Posté le 13-09-2007 à 13:29:47  profilanswer
 

Il te faut autant de \t que de colonnes à sauter avant d'arriver à celle que tu veux.


---------------
Directeur Technique (CTO)
n°1611357
IrmatDen
Posté le 13-09-2007 à 13:43:06  profilanswer
 

redah75 a écrit :

WiiDS: j'ai essaye \x10 mais ca donne rien, il m'insere un caracter bizarre au lieu du saut de ligne


Le caractère bizarre est lié au problème de style que j'ai évoqué rapidement plus haut. Il ne te reste plus qu'à voir comment sont gérés les styles avec l'api que tu utilises :)

n°1611358
redah75
Posté le 13-09-2007 à 13:44:48  profilanswer
 

eh non, les \n passent a une nouvelle ligne :(
 
c'est pas grave, je laisse tomber...
 
Merci infiniment a tous

n°1611359
redah75
Posté le 13-09-2007 à 13:46:46  profilanswer
 

je ne vois pas comment je peux incorporer des styles avec des fputs("nom_fichier", "Valeur1ereLigne\t" );
je voulaisegalement mettre du gras par exemple mais je pense que c pas possible!!

n°1611370
Soileh
Lurkeur professionnel
Posté le 13-09-2007 à 14:03:57  profilanswer
 

Chez moi, le code suivant :

 

fwrite( $handle, "\"Beaucoup de texte\nEncore du texte\nLa fin du texte\"" );

 

fonctionne, je comprends pas là  :??:


Message édité par Soileh le 13-09-2007 à 14:04:24
n°1611394
redah75
Posté le 13-09-2007 à 15:14:40  profilanswer
 

ah ouiiiii, la ca marche, merci bp :)
j'en profite juste pour poser une derniere question: est ce possible de mettre du gras ou italique???
 
merci merci merci mille fois ;)

n°1611416
redah75
Posté le 13-09-2007 à 16:15:07  profilanswer
 

oh lala, je suis desole de vous embeter encore une fois, la methode que tu m'as donnee Soileh marche bien, mais j'arrive pas a l'adapter a mon cas!!
 
le texte que j'insere est une valeur dynamique:
fwrite( $handle, $val);
 
si je fais:
$val = "\"mon texte 1\"";
$val .= "\"\nmon texte 2\"";
 
ca ne marche pas, vois tu pk??

n°1611422
IrmatDen
Posté le 13-09-2007 à 16:27:53  profilanswer
 

Les guillemets doivent entourer l'ensemble du contenu de la cellule et non chaque ligne.

n°1611423
rufo
Pas me confondre avec Lycos!
Posté le 13-09-2007 à 16:34:59  profilanswer
 

Pour le coup de la mise en gras, non, c'est pas possible en csv. Le csv est un fichier texte sans mise en forme.

n°1611424
redah75
Posté le 13-09-2007 à 16:39:26  profilanswer
 

ok cool, j'ai reussi ;)
merci bp a tous

n°1764261
gblondeau
Posté le 24-07-2008 à 14:21:59  profilanswer
 

Salut,
 
Une solution toute simple en HTML:
 
faire une table tout ce qu'il y a de plus table HTML, utiliser les BR pour les retours à la ligne et dans les styles définir que les BR se font dans la même cellule:
 
br {
 mso-data-placement:same-cell;
}
 
 
Exemple de fichier HTML:
 

Citation :

<html>
<head>
<style>
 br {mso-data-placement:same-cell;}
</style>
</head>
<body >
<table>
<tr>
<td>Colonne1</td>
<td>ici</td>
<td>
 Ligne 1<br />
 Ligne 2<br />
 blabla<br />
 blabla aussi<br />
</td>
</tr>  
</table>
</body >
</html>


 
A +
Guillaume

n°1770577
redah75
Posté le 07-08-2008 à 11:34:03  profilanswer
 

Ah ouaiiiis, ca c'est cool et en plus trop simple... :) je ne savais pas qu'une page html pouvais faire l'affaire!!
 
Je te remercie beaucoup Guillaume ;)
 
@+

n°1771640
Gavrinis
Open your mind
Posté le 10-08-2008 à 03:07:32  profilanswer
 

déterrage d'un peu plus d'un an :sarcastic:

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  ALT + ENTREE en PHP pour Excel

 

Sujets relatifs
taille d'un ALT et TitleAjout menu dans Excel
excel/vba probleme de message (microsoft forms)excel/vba fonction trouver un mot dans une plage
[PHP]Activer t1libEnvoie d'email illimité grace à un programme PHP??
besoin d'explications pour PHP/PGSQLCommmunication PHP/JS
Aide pour VBA sous ExcelPhp, Mysql et accents
Plus de sujets relatifs à : ALT + ENTREE en PHP pour Excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR