Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Bureautique
Bureautique Forum d'entraide sur la gestion dynamique de documents de bureautique (Word, Excel, OpenOffice...) avec PHP. Avant de poster -> Cours Excel, FAQ OpenXML, FAQ OpenDocument
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2011, 16h34   #1
Invité de passage
 
Inscription : mars 2009
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 14
Points : 2
Points : 2
Par défaut [PHPExcel] Formule dans un champs, erreur opérateur

salut a tous,
voila voila, encore un probleme avec PHPExcel, j'essaie passer une fomule dans un champ, et à chaque fois j'ai le même prob :

La fameuse formule :
--------------------
'=SOMMEPROD(1/NB.SI(B2:B226;B2:B226))'

Et avec PHPExcel j'ai fait sa :
-----------------------------
Code :
$objPHPExcel->getSheet(1)->setCellValue('B227', '=SOMMEPROD(1/NB.SI(B2:B226;B2:B226))', PHPExcel_Cell_DataType::TYPE_FORMULA);
j'ai aussi essaie sa :
-------------------
Code :
$objPHPExcel->getSheet(1)->setCellValueByColumnAndRow('B', '227', '=SOMMEPROD(1/NB.SI(B2:B226;B2:B226))';

et malheureusement j'ai a chaque fois l'erreur suivante :
'13.2!A227 -> Formula Error: Unexpected operator '/'' in C:\wamp\www\SVN\trunk\public\lib\PhpExcel\PHPExcel\Cell.php on line 288

help help helppppp
spark_legion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 16h46   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Utilise SUMPRODUCT pour voir, je crois qu'il faut les fonctions en VO.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 10h48   #3
Invité de passage
 
Inscription : mars 2009
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 14
Points : 2
Points : 2
Par défaut PHPExcel Formula

salut, et merci pour ta réponse
j'ai changé ma formule en Anglais et maintenant j'ai l'erreur suivante

Code :
formule ==>  '=SUMPRODUCT(1/NB.IF(B2:B226,B2:B226))';
Citation:
Notice: Undefined offset: 2 in C:\wamp\www\SVN\trunk\public\lib\PhpExcel\PHPExcel\Calculation.php on line 2855

Fatal error: Uncaught exception 'Exception' with message '13.2!B227 -> Formula Error: An unexpected error occured' in C:\wamp\www\SVN\trunk\public\lib\PhpExcel\PHPExcel\Cell.php on line 288
une idée ??
spark_legion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 11h32   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu as mis , au lieu de ;
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 12h22   #5
Invité de passage
 
Inscription : mars 2009
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 14
Points : 2
Points : 2
même problème soit avec le ; ou avec ,
spark_legion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 14h18   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Citation:
Notice: Undefined offset: 2
?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 21h27   #7
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Pas assez de Parenthèse

Code :
1
2
 
$objPHPExcel->getSheet(1)->setCellValueByColumnAndRow('B', '227', '=SOMMEPROD(1/NB.SI(B2:B226;B2:B226))');

Single Quote trop loin
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 10h16   #8
Invité de passage
 
Inscription : mars 2009
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 14
Points : 2
Points : 2
Par défaut Resolu

Merci pour votre aide les mec, c'est super sympa de votre part,
pour le problème c'est que PHPExcel et en anglais et les formules excel que j’insère dans une cellule doit être en anglais aussi

ce qui donne

Code :
$objPHPExcel->getSheet(1)->setCellValue('X1', '=SUMPRODUCT(1/COUNTIF(B2:B'.$s.',B2:B'.$s.'))', PHPExcel_Cell_DataType::TYPE_FORMULA);
ma connerie c'etais de mettre : NB.SI à la place de COUNTIF

néanmoins le scrolling du fichier Excel que je génère ne descend pas, pour résoudre le problème, le résultat et généré en XLSX au lieu XLS
spark_legion est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h54.


 
 
 
 
Partenaires

Hébergement Web