|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
Bonjour tout le monde. j'ai apprecié le tutorial pour utiliser les objet COM avec PHP et générer des fichier excel (surtout graphique) ca le fait vraiment. Cela dit j'ai une question.
Je dois récupérer des données formatées à partir de centaines de fichier excel. Chaque fichier contient 10 feuille toute identique en forme mais avec des données différentes biensur. Lorsque je vais chercher les données avec COM tout marche bien sauf que pour les date il me donne le nombre TIME qui correspond au temps UNIX. hors j'ai des date qui sont avant le TEMPS UNIX donc il me met -1. et second problème parfois les date sont mal écrite du style 12102004 au lieu de 12/10/2004. Enfin soit il y a possibilié de forcer la récupération dans un format texte soit il existe une possibilité d'exporter toute les feuilles d'un classeur en format CSV et dans ce cas plus de problème. MErci de me donner vos solutions si vous en avez GEO |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() |
hello,
j'ai rencontré ce genre de problème il y a longtemps, à l'époque j'avais opté pour une solution du genre : 1) j'ouvre un fichier excel (via PHP) 2) pour chaque feuille je fais "enregistrer sous..." => CSV 3) je passe au fichier suivant euh... c'est tout Enfin perso si j'ai opté pour le CSV, ce n'était pas à cause des dates mais surtout pour un gain de temps. Le traitement était beaucoup plus rapide en passant par l'étape conversion CSV. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
d'acccord mais alors commen ttu fais ton exporte csv STP
|
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() |
pour ça, je te laisse te renseigner auprès de Google et des nombreux tutoriaux... perso je ne m'en souviens plus, et pas moyen de mettre la main sur le code en question...
M'enfin, ce doit etre un truc de ce genre : en prenant soin de selectionner la bonne feuille avant, et en remplaçant le xlNormal par la constante appropriée... (suffit de tester via une macro Excel pour avoir le nom de la bonne constante). Pour connaitre les valeurs des constantes : http://techsupt.windowware.com/TS/T000001033005F9.html |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
voila j'ai trouvé merci pour tes conseil. je met le resultat pour ce que ca interesse.
$classeur->saveas($dest, 6); 6 c'est la valeur de la constante xlCSV apparament ca ne marche que avec la valeur de constante pas avec le nom Voila salut |
|
|
00
|
|
|
#6 | ||
|
Membre chevronné
![]() |
Citation:
Citation:
|
||
|
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
en fait j'ai problème voila mon script :
Code :
et autre chose. peut on éviter de demander systèmatiquement à l'utilisateur si il veut enregistrer car il y une alerte excel qui me le dmeande merci |
||
|
|
00
|
|
|
#8 |
|
Membre chevronné
![]() |
arf... faut chercher un peu
Lors de l'enregistrement au format CSV, Excel ne va conserver que la feuille ACTIVE. Il te suffit donc de selectionner cette feuille avant d'enregistrer. Par exemple : $feuille->select(); Pour le warning, oui il existe au moins deux solutions : la premiere est de faire un "$classeur->saved=true;" (il me semble hein, le mieux serait de demander à Google), et la deuxième est de désactiver les messages d'alerte justement (là non plus, je ne me souviens plus). |
|
|
00
|
|
|
#9 | ||
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
trop bein ca marche... tu es mon héros.
voila le code pour ce que ca interesse : Code :
|
||
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() |
|
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
commetn savoir si une feuille existe
ou alors combien il y a de feuille dans un classeur |
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : octobre 2004 Messages : 7 ![]() |
j'ai réglé le preoblème défférament merci
|
|
|
00
|
|
|
#13 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 3 ![]() |
Ce sujet n'est pas tout jeune, mais je me permet de le remonter car il répond en parti à un probleme que je rencontre.
Voilà, je dois également créer des fichiers csv à partir d'un classeur Excel comportant plusieurs feuilles toutes ayant la meme forme mais pas le meme contenu tout comme gledoux. Cependant, seules les données de quelques cellules m'interessent et doivent etre exportées en .csv Je voulais savoir si vous aviez une solution pour cela, car je ne veux pas l'export de toutes les données de chaque feuille mais uniquement par exemple les cellules C2,D4,H8 de chaque feuille. Je ne sais pas comment faire avec cette solution php qui me semble etre la seule permettant l'export automatique en csv de tout un classeur excel. Merci d'avance pour toute aide. |
|
|
00
|
|
|
#14 |
![]() ![]() Inscription : mai 2002 Messages : 860 ![]() |
Ben tu sélectionnes les cellules de ta feuille, par exemple:
J'espère que ça t'aide un peu, sinon, il y a un bon tuto là: http://stephaneey.developpez.com/tutoriel/php/phpexcel/ |
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 3 ![]() |
Oui selectionner ce n'est pas ce qu'il y a de plus dur
Mais c'est surtout n'enregistrer en csv que le contenu de ces cellules qui est plus compliqué |
|
|
00
|
|
|
#16 |
![]() ![]() Inscription : mai 2002 Messages : 860 ![]() |
Pour récupérer la valeur de la cellule, tu fais:
J'espère que ça t'aide... mais n'hésite pas à aller reluquer le lien que je t'ai mis... |
|
|
00
|
|
|
#17 |
|
Invité de passage
![]() Inscription : août 2005 Messages : 3 ![]() |
Vi j'ai regardé, ca m'a donné une idée, je pense que je vais parcourir mon fichier excel et stocker dans un tableau toutes les valeurs des cellules qui m'interessent, pour ensuite les réinséré dans un nouveau fichier excel et exporter en csv
Merci. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com