Workbook saveas "error" version excel ?

Bonjour,

Suite à un changement de pc XP sp2 avec excel 2003 vers un pc vista premium excel 2007, j'ai un script qui me retourne une erreur dans la log du serveur apache 2.2 :

A priori : fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft Office Excel<br/><b>Description:</b> Impossible de lire la propri\xe9t\xe9 SaveAs de la classe Workbook.'

cette fonction a priori ne fonctionne pas sous vista + excel 2007 "saveas" ?

Avez-vous une idée de contournement par avance merci.

[Tue Jul 14 22:13:16 2009] [error] [client 127.0.0.1] PHP Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft Office Excel<br/><b>Description:</b> Impossible de lire la propri\xe9t\xe9 SaveAs de la classe Workbook.' in C:\\www\\blissbret\\exporterstructure.php:178\nStack trace:\n#0 C:\\www\\blissbret\\exporterstructure.php(178): variant->saveas('C:/www/blissbre...')\n#1 {main}\n thrown in C:\\www\\blissbret\\exporterstructure.php on line 178, referer: http://127.0.0.1/selectionstructur [...] bpieces=18
[Tue Jul 14 22:18:55 2009] [error] [client 127.0.0.1] PHP Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft Office Excel<br/><b>Description:</b> Impossible de lire la propri\xe9t\xe9 SaveAs de la classe Workbook.' in C:\\www\\blissbret\\exporterbon.php:971\nStack trace:\n#0 C:\\www\\blissbret\\exporterbon.php(971): variant->saveas('C:/www/blissbre...')\n#1 {main}\n thrown in C:\\www\\blissbret\\exporterbon.php on line 971, referer: http://127.0.0.1/selectionstructur [...] bpieces=18

Merci de votre aide.
Configuration: Windows vista premium +office 2007
Firefox 3
ie8

10 réponses

  • Votes
  • Date
  • Date décroissante
  1. En fait, j'ai eu le même problème, le plus simple c'est d'ouvrir un fichier en fopen ($monfic, x), puis d'y mettre une chaine qui n'est ni plus ni moins qu'un tableau html, du genre <table><tr><td>A1</td><td>A2</td></tr><tr><td>B1</td><td>B2</td></tr></table>...
    ensuite tu fais un fwrite de ta chaine et hop le tour est joué ;-)
    1. Au secours svp un peit coup de main je ne trouve pas la solution ? :(
      1. help please, y a personne qui aurait une piste svp pour que ce code passe sur les deux versions xp excel 2003 et vista office 2007 ?

        Thx.
        1. Contributeur
          bonjour

          Au lieu de t'impatienter, tu devrais nous mettre le code exact qui ne fonctionne pas plutôt qu'un message imbuvable qui ne signifie pas grand chose.

          cette fonction a priori ne fonctionne pas sous vista + excel 2007 "saveas" ?

          Ne penses-tu pas que ton paramétrage puisse présenter un défaut ?
          1. Ok suite à ta réponse, voici le code qui pose problème :

            (début)
            $excel=new COM("Excel.application");//Instanciation de l'objet COM
            $excel->sheetsinnewworkbook=1;//1 feuille dans le document
            $excel->Workbooks->Add();//Ajout d'un classeur
            $book=$excel->Workbooks(1);//$book contient le classeur actif

            (gestion des cellules du document)

            (fin)
            $book->saveas($nomcomplet);//Enregistrement du document
            unset($sheet);//Libération de $sheet
            unset($book);//Libération de $book
            $excel->Workbooks->Close();//Fermeture du classeur
            $excel->Quit();//On quitte Excel
            unset($excel);//Libération de l'objet $excel
            aide.

            Merci de votre
        2. Contributeur
          bonjour

          Tu devrais préciser le format du fichier XlFileFormat qui est très détaillé en 2007
          $book->saveas($nomcomplet,xlExcel8);//Enregistrement du document
          

          xlExcel8 pour format .xls 2003
          1. Nouvelle erreur suite à modification :

            [Tue Jul 21 09:29:45 2009] [error] [client 127.0.0.1] PHP Fatal error:
            Uncaught exception 'com_exception' with message '<b>Source:</b>
            Microsoft Office Excel<br/><b>Description:</b> Impossible de lire la
            propri\xe9t\xe9 SaveAs de la classe Workbook.' in
            C:\\www\\blissbret\\exporterbon.php:972\nStack trace:\n#0
            C:\\www\\blissbret\\exporterbon.php(972):
            variant->saveas('C:/www/blissbre...', 'xlExcel8')\n#1 {main}\n thrown
            in C:\\www\\blissbret\\exporterbon.php on line 972, referer:
            http://127.0.0.1/selectionstructure2.php?identifiantaffaire=09%20010&structure=2DY40&nbpieces=18

            :)
            1. Contributeur
              bonjour

              Pourquoi as-tu un suffixe .php ?
              1. Je génère un fichier Excel avec du code php. Tout mon code fonctionne parfaitement avec mon précédent ordinateur (xp + office 2003) et sur mon nouvel ordinateur (vista + office 2007), j'ai une erreur au niveau de la propriété saveas : Impossible de lire la propri\xe9t\xe9 SaveAs de la classe Workbook.

                Merci par avance pour votre aide car je sèche.
            2. essaye de mettre des ' ' a la place des " " et des \ a la place des / dans C:..(chemin ou tu veu mettre ton fichier eexel) parce que je pense que ton probleme vient du chemin ou tu veux mettre le fichier excel ainsi crée
              1. essaye de mettre des ' ' a la place des " " et des \ a la place des / dans C:..(chemin ou tu veu mettre ton fichier eexel) parce que je pense que ton probleme vient du chemin ou tu veux mettre le fichier ainsi crée