PHP, Excel et ODBC

PHP, Excel et ODBC - PHP - Programmation

Marsh Posté le 23-03-2010 à 16:49:34    

Hello
 
Actuellement, jecris une "application" en php pour modifier un fichier excel depuis une interface web.
J'arrive à récupèrer les informations ainsi qu'à les modifier.
 
J'utilise ODBC, et je me connecte à ma feuille comme ceci : Driver={Microsoft Excel Driver (*.xls)}; DBQ=C:wampwwwplanningplanning.xls; ReadOnly=False; FirstRowHasNames=False;
 
Seulement, parmis les informations à recuperer, se trouve des cellule avec une formule. Je recupere bien un resultat, mais erroné.
J'essaie expliqué :
 
imaginons qui j'ai une cellule A1 qui contient 18 et une cellule B69 qui contient =A1. La cellule B69 a donc visuellement la même valeur que A1.
 
Maintenant, je veux mettre 28 comme valeur pour A1 :
- si je modifie A1 via Excel, aucun problème, B69 change de valeur
- si je modifie A1 via le programme PHP et que j'affiche la valeur de B69 via le programme PHP, probleme ! B69 contient l'ancienne valeur (cad 18 au lieu de 28)
- si je modifie A1 via le programme PHP et que j'ouvre la feuille excel dans Excel, aucun probleme, B69 aura la bonne valeur.
 
Une idée de l'origine du probleme et comment le corriger ?


---------------
Une femme c'est temporaire - une ex c'est pour la vie.
Reply

Marsh Posté le 23-03-2010 à 16:49:34   

Reply

Marsh Posté le 23-03-2010 à 17:00:12    

A mon avis, tu dois recalculer la feuille Excel. Aucune idée si c'est possible via PHP. Le fait que tu te connectes via ODBC me fait penser que non. A tout hasard, tu as essayé de te déconnecter/reconnecter à la feuille Excel? (jamais essayé, c'est juste une idée)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 23-03-2010 à 17:11:45    

T'as essayé de te connecter via COM plutôt que via ODBC? Perso, je pense aussi que ça vient du fait que les formules ne sont pas recalculées. Avec COM, y'a peut-être une chance que ça soit fait automatiquement, ou alors tu pourras forcer le recalcul (y'a une fonction vba qui fait ça il me semble).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 23-03-2010 à 17:21:57    

Via ODBC, c'est certain, c'est pas recalculé. Aussi certain que avec COM, ça marchera. Le tout est de voir s'il a la liberté de faire tourner Excel sur le serveur.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 23-03-2010 à 17:40:13    

Merci pour ces réponses.
 
Je vais me tourner du coté de COM pour recalculer les formules si je peux avoir excel sur le serveur.


---------------
Une femme c'est temporaire - une ex c'est pour la vie.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed