LECTURE D'UN FICHIER EXCEL

cs_ben05 Messages postés 37 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 4 février 2009 - 13 janv. 2007 à 16:55
chouiba Messages postés 1 Date d'inscription lundi 31 mars 2008 Statut Membre Dernière intervention 5 juillet 2010 - 5 juil. 2010 à 12:15
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/41045-lecture-d-un-fichier-excel

chouiba Messages postés 1 Date d'inscription lundi 31 mars 2008 Statut Membre Dernière intervention 5 juillet 2010
5 juil. 2010 à 12:15
Merci beaucoup POUR CETTE SOURCE ;)
beuzz4001 Messages postés 4 Date d'inscription mercredi 5 mai 2010 Statut Membre Dernière intervention 5 mai 2010
24 sept. 2009 à 10:43
Salut

c est bon en faite j ai trouvé.
Pour afficher le nom de la feuille :

echo "".$donne->boundsheets['0']['name']."
";

a plus tt le monde
beuzz4001 Messages postés 4 Date d'inscription mercredi 5 mai 2010 Statut Membre Dernière intervention 5 mai 2010
24 sept. 2009 à 10:37
Bonjour

j'utilise ton petit script et il marche bien.
je voudrais juste la commande pour retrouver le nom de la feuille affin de pouvoir faire une recherche sur le nom de la feuille

merci pour vos réponses
toshysound Messages postés 1 Date d'inscription vendredi 16 juin 2006 Statut Membre Dernière intervention 29 juin 2009
29 juin 2009 à 06:51
Bonjour à tous,

j'ai déjà essayé d'utiliser cette classe mais comme à peu prêt toutes les classes pour lire les fichiers excel, elles posent problème lorsque le fichier est trop gros. Soit en mémoire, soit en temps d'exécution. Sinon pour les formats date et autres fonctionnalités je vous propose d'utiliser la classe PHPExcel qui est vraiment bien faite mais pareil si le fichier est trop gros ça pose problème. Le mien faisait 5Mo et 14500 lignes et ça marchait pas même avec 512Mo de mémoire dans le php.ini.
Cordialement,

Toshysound
cs_ynsmtkl Messages postés 3 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 30 mars 2009
30 mars 2009 à 00:00
Bonjour à tous,

je veux lire une colonne de type date, mais la lecture se convertir en type texte.

si quelqu'un peux m'aider je lui serai reconnaissant.
merci d'avance.
@+
cs_cacoucatatonique Messages postés 164 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 7 octobre 2009
7 oct. 2008 à 18:54
bonjours a tous, je suis désolé je n'avai pas vue qu'il y avai autant de question sur ce que j'avai fait.
Ca doit faire presque un ans que je ne me suis pas connecté.
Heu bein pour toutes les question je vous avoue que j'ai trés peut de souvenir, il me faudrai me repencher sur le programme mais ca va metre trés difficile du fait que je n'ai plus trop de temps pour le php (je doit absolument apprendre le C et c++ pour l'ecole snif).
Donc je m'escuse fortement pour les abcsences de réponse, maintenant de memoire j'ai fait fonctionner ce code pour remplir une base mysql et mon document de départ comporté pré de 20000 lignes, et ca fonctionné sans probleme avec le code ci-dessus.
Je vai tout de meme tenter de me repencher dessus si j'arive a remettre la main sur mon code.
voila bein bon courage a tous .
cs_zazou11 Messages postés 14 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 17 septembre 2008
7 août 2008 à 00:57
Bonjour moi aussi j'ai utilisé cette classe mais malheureusement moi j'arrive pas a récupérer les données , il m'affiche cette erreur:
"Notice: iconv() [function.iconv]: Detected an illegal character in input string in C:\wamp\www\tests\Excel\reader.php on line 796"

et après plusieur essai je me suis rendu compte qu'elle est du au différents colonnes du fichier excel qui ne sont pas bien ouvertes cad (si y a une phrase d'écrite ds une cellule et que la fin de la phrase n'apparait pas alors il génère cette erreur) donc si je double clique sur la bordure de la colonne elle s'ouvre complètement et la je peux voir la fin de la ligne et comme ça j'arrive a lire la cellule en php
mais le pbm c que je peux pas faire ça car mon fichier excel est généré automatiquement et lu automatiquement juste après.

si qq peut m'aider a résoudre ça comment écrire ds un fichier excel d=sans cacher l'écriture, ça serai trop sympa merci

j'espère que qq a compris de quoi je parle
Utilisateur anonyme
31 juil. 2008 à 17:52
Bonjour,

Voila, j'utilise cette class et j'ai un petit soucis,je récupère bien les données mais dès que je veux récupérer une cellule avec des heures, je n'ai pas la bonne donnée,je m'explique j'ai une colonne avec des heures et une cellule avec la somme de ces heures, la somme étant de 24:48:18 et la class me donne 08:16:34, j'ai beau modifier le format des cellules avec setColumnFormat ou setDefaultFormat et chercher sur tout les forums je ne trouve rien !!!
Quelqu'un aurait il une idée car là je suis complètement bloqué ??

Merci par avance
ZOD31 Messages postés 3 Date d'inscription lundi 14 mai 2007 Statut Membre Dernière intervention 27 août 2007
27 août 2007 à 09:55
Bonjour je voudrai savoir comment faire pour me servir de cette fonction pour inserer les données d'un fichier xls dans une Base de Donnée; petite précision mon tableau possède plus de 30 colonne et le nombre de lignes contenus dans mes différents fichier est variable d'une dizaine de ligne au maximum possible d'un fichier xls. Merci d'avance.
skyrock55 Messages postés 3 Date d'inscription samedi 5 mai 2007 Statut Membre Dernière intervention 3 juillet 2007
7 juil. 2007 à 11:30
Si vous avez beaucoup de ligne le script est long a s'executer.
Le temps maximal d'execution par defaut est de 30 secondes et ca limite ERREUR : Maximum execution time of 30 seconds exceeded
Il suffit de changer se temps soit dans la config php.ini soit grace a une ligne de code. Mais souvent les herbegeurs bloquent ce temps pour pas surcharger leur machine. On doit alors découper l'execution du code en plusieurs parties.
Pour changer la variable directement : ini_set('max_execution_time', 320); au debut du script cela devrait marcher.
cs_cacoucatatonique Messages postés 164 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 7 octobre 2009
5 juin 2007 à 15:24
je ne veux faire le mauvai garcon, mais le php je ne le connais pas depuis longtemps, et pi si tu a lu la description du dossier la sorce n'est pas de moi.
pour information, j'ai beaucoup de mal à comprendre et a utiliser la programmation orienté objet, et sincerement je ne peut pas t'aider car moi meme je ne comprend pas le fonctionnement de l'objet qui lit le fichier excel.
donc encore une fois , demande à celui qui à pondu cette merveille au lien suivant:
http://freshmeat.net/projects/phpexcelreader/
moi le php j'ai beaucoup de mal à evoluer .
coolboy78 Messages postés 76 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 20 novembre 2007
5 juin 2007 à 14:57
Apparement ca doit venir de la taille du fichier. Car en enlevant de moitié mes données, le fichier est lu. As-tu une idée pour changer le bon paramètre ?
cs_cacoucatatonique Messages postés 164 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 7 octobre 2009
5 juin 2007 à 13:22
tu as essayé en imbriquant une deuziéme boucle pour faire evoluer le deuziemé chiffre:
$variable=$data->sheets[0]['cells'][$i][$j];

malheuresement je n'ai pas assez de connaissance dans le php pour te donner un coup de main, désolé.
coolboy78 Messages postés 76 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 20 novembre 2007
5 juin 2007 à 11:58
j'ai 1215 lignes avec 21 colonnes soit 25115 cellules.
Tu crois pas que le pb vient de la ?
j'ai essayé ton bout de code mais il ne marche pas avec ce fichier.
Avec des fichier plus petit c ok.
Il me faudrait une solution, please.
cs_cacoucatatonique Messages postés 164 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 7 octobre 2009
5 juin 2007 à 11:10
salut a tous,
pour abderrahman86 :de ce qui est des dates je n'ai jamais fais le test donc je ne pourrai pas de fournir d'information, mais a froid comme ca je te dirai de remplasser les : par des - ou des _, ca pourrai etre une idéée
pour coolboy78: ma source lit un fichier excel de 5000 lignes environ avec deux boucles for inbriquer une pour la ligne et une pour les colonnes et chez moi ca fonctionne et ca resemble à ca:

require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');
$data->read('clx1.xls');
error_reporting(E_ALL ^ E_NOTICE);

for ($i = 1; $i <= $data->sheets[0]['numRows']+1 ; $i++ )
{

$tag=$data->sheets[0]['cells'][$i][1];
$add=$data->sheets[0]['cells'][$i][2];

BDD($tag,$add);

}

la fonction BDD me permet d'ecrir dans ma BDD.

voila en gros tous ce que je pouvais dire
coolboy78 Messages postés 76 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 20 novembre 2007
5 juin 2007 à 10:20
Bonjour,
j'ai utilisé cette source, mais elle ne marche pas.
ya t'il une configuration a faire ? Mon fichier fait 1500 lignes ? pb de taille ?
abderrahman86 Messages postés 24 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 5 mai 2009
5 juin 2007 à 02:20
bonjour
merci pour cette source.
j'ai utiliser cette source pour remplir une base de données a partir d'un fichier excel mais il m'a donné un erreur concernant les dates.
chino18 Messages postés 82 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 1 avril 2011 1
22 mars 2007 à 16:08
Merci cacoucatatonique pour cette source.

Je cherchais depuis un moment un script de ce type.
Parce que manipuler un fichier CSV c'est con comme la lune, par contre avec des fichier XLS c'est une tout autre histoire...
cs_boujan Messages postés 12 Date d'inscription lundi 7 février 2005 Statut Membre Dernière intervention 20 avril 2008
17 janv. 2007 à 22:05
Merci beaucoup
cs_ben05 Messages postés 37 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 4 février 2009
13 janv. 2007 à 16:55
Salut,

Pour info, ta source vient exactement de :

http://sourceforge.net/projects/phpexcelreader/

Cordialement,

Ben
Rejoignez-nous