Ajouter un formule avec PHPExcel

Résolu
zerdg Messages postés 88 Statut Membre -  
zerdg Messages postés 88 Statut Membre -
Bonjour,
j'essaye d'ajouter la formule suivante dans un fichier excel par PHPExcel:
=NB.SI(AA:AA;"*mot*")
mais je n'y arrive pas comment je peux faire ?

6 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    Bonjour,

    mais je n'y arrive pas

    Peux tu nous montrer ce que tu as essayé de faire ? car sans ça.. difficile pour nous de voir où tu te serais trompé....

    **** Attention ****
    Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
    Explications disponibles ici :
    https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

    .
    0
    1. zerdg Messages postés 88 Statut Membre 2
       
      je met juste la ligne de code où se situe la formule
      $sheet->setCellValueByColumnAndRow(31,1,'=NB.SI(AA:AA;"*acceuil*")');
      0
  2. zerdg Messages postés 88 Statut Membre 2
     
    Up s'il vous plait.
    0
  3. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    Deux choses :
    1 - regardes du côté de : PHPExcel_Cell_DataType::TYPE_FORMULA
    2 - Il me semble qu'il faut utiliser les fonctions ANGLAISES et non FRANCAISES.

    par exemple :
    $objPHPExcel->getSheet(1)->setCellValue('X1', '=SUMPRODUCT(1/COUNTIF(B2:B'.$s.',B2:B'.$s.'))', PHPExcel_Cell_DataType::TYPE_FORMULA);
    

    0
    1. zerdg Messages postés 88 Statut Membre 2
       
      Merci j'ai pu progresser mais j'ai toujours une erreur avec excel j'ai un zero qui s'affiche et si j'utilise libre calc j'ai une erreur 508 mais la formule est présente ce qui n'était pas le cas avant.
      0
  4. zerdg Messages postés 88 Statut Membre 2
     
    UP s'il vous plait
    quand mon fichier excel s'ouvre j'ai l'erreur suivante :
    le nombre dans cette cellule est au format texte ou est précédé d'une apostrophe.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     

    Merci j'ai pu progresser mais j'ai toujours une erreur avec excel j'ai un zero qui s'affiche

    Un zéro qui s'affiche ou ?
    Sachant que ta formule nb.si ... ben... affiche un zéro si aucun résultat trouvé... normal....!


    quand mon fichier excel s'ouvre j'ai l'erreur suivante :
    le nombre dans cette cellule est au format texte ou est précédé d'une apostrophe.

    Sans savoir quel code tu utilises désormais ... impossible pour nous de te répondre.
    0
    1. zerdg Messages postés 88 Statut Membre 2
       
      Je vais essayer d'être clair
      le bout de code qui me permet d'utiliser la formule actuellement :
      $sheet3->setCellValue ("AF1" ,'=COUNTIF(AA:AA;"*accueil*")',PHPExcel_Cell_DataType::TYPE_FORMULA);
      

      Sous excel j'obtient l'erreur avec le zero et sous libre calc une erreur #508 mais avec la formule qui est présente.
      la formule devrais afficher deux non pas zéro. ce qui est vérifié quand je rentre la formule ;
      =NB.SI(AA:AA;"*accueil*")
      0
  7. zerdg Messages postés 88 Statut Membre 2
     
    J'ai eu là réponse que j'attentais sur un autre forum je met la réponse ici:
    $sheet->setCellValue ("AF1" ,'=COUNTIF(AA:AA,"*accueil*")',PHPExcel_Cell_DataType::TYPE_FORMULA);


    le problème résidait dans le fait que le séparateur était une virgule et non un point virgule.
    0