COM Excel [Résolu]

Messages postés
213
Date d'inscription
dimanche 8 juin 2003
Dernière intervention
9 février 2012
- - Dernière réponse : citt
Messages postés
213
Date d'inscription
dimanche 8 juin 2003
Dernière intervention
9 février 2012
- 24 mai 2008 à 11:48
Bonjour,

Je voudrait créer un fichier excel a partir de php, j'ai trouvé des sources pour faire ca qui vont bien mais mon probleme est que quand il execute ceci :


$excel =
new COM(
"excel.application")


il me renvoie l'erreur :

PHP Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `excel.application': Accès refusé. ' in C:\Inetpub\wwwroot\page_rank\calcul.php:37 ....

Je n'arrive pas a trouver de solution. Pourquoi ne veut-il pas l'instancié ?
Excel est bien installé sur mon serveur IIS avec PHP5.

Citt_jr
Bats toi avec les meilleurs, crève avec le reste
Tsubara.net
Afficher la suite 

Votre réponse

9 réponses

Messages postés
1162
Date d'inscription
mardi 9 septembre 2003
Dernière intervention
15 août 2009
0
Merci
Moi je cree des fichiers excel comme ca:

...
$handle = fopen($filename, "wb");


$content ='<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="www.w3.org/TR/REC-html40&...
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-latin-1" />
<meta name="ProgId" content="Excel.Sheet" />
<meta name="Generator" content="Microsoft Excel 9" />
</head>

... |
... |
... ...
';

$content . = '
</html>';


fwrite($handle, $content);
fclose($handle);

Si ca peut servir...
Commenter la réponse de malik7934
Messages postés
1663
Date d'inscription
lundi 16 septembre 2002
Dernière intervention
30 juillet 2008
0
Merci
Met un try catch, t'aurais plus d'erreur. Ni de feuille excel par la même occasion :P ?

, EssayezTestez avant de Poser une question !
Commenter la réponse de cs_GRenard
Messages postés
213
Date d'inscription
dimanche 8 juin 2003
Dernière intervention
9 février 2012
0
Merci
Je veut passer par le COM car je veut créer des graphiques par derriere ce que ne l'on peut pas faire avec ta technique. Personne n'a jamais eu le même probleme que moi ?

Citt_jr
Bats toi avec les meilleurs, crève avec le reste
Tsubara.net
Commenter la réponse de citt
Messages postés
30
Date d'inscription
samedi 1 février 2003
Dernière intervention
9 octobre 2007
0
Merci
Bonjour Citt,
J'ai le même problème que toi. Comment procède t-on pour la modification des droits d'acces et d'execution du service sur le serveur. J'utilise windows xp, je te remercie d'avance.
Commenter la réponse de cs_minta
Messages postés
213
Date d'inscription
dimanche 8 juin 2003
Dernière intervention
9 février 2012
0
Merci
Bonjour,

Ma solution a été d'utiliser la librairie Pear http://pear.php.net/package/Spreadsheet_Excel_Writer/redirected

cela marche aussi bien qu'excel

Citt_jr
Bats toi avec les meilleurs, crève avec le reste
Tsubara.net
Commenter la réponse de citt
Messages postés
2368
Date d'inscription
mercredi 13 octobre 2004
Dernière intervention
18 avril 2015
0
Merci
'Failed to create COM object `excel.application': Accès refusé. '

Si c'est pas explicite ca... Même quand c'est écrit en francais les gens se demande encore pourquoi ca marche pas !
Commenter la réponse de FhX
Messages postés
18
Date d'inscription
vendredi 5 janvier 2007
Dernière intervention
26 juin 2008
0
Merci
Bonjour @ tous,

Gros déterrage de topic là ^_^ bon j'ai parcouru les topics là dessus mais bon j'ai pas encore trouvé de solution, j'ai un serveur sous wamp avec office installé tout le tralala en admin bref pas de pb de droits ni autres, je lance ce bout de code pêché sur le site officiel de la doc php :

<?php

/* Démarrage de Word */
$word = new COM("word.application") or die("Impossible d'instancier l'application Word");
echo "Word lancé, version {$word->Version}\n";

/* Amener Word devant */
$word->Visible = 1;

/* Cree un document vide */
$word->Documents->Add();

/* Quelques commandes */
$word->Selection->TypeText("Ceci est un test...");
$word->Documents[1]->SaveAs("test.doc");

/* Fermeture de word */
$word->Quit();

/* Libération des ressources */
$word = null;
?>
Jusqu'à la ligne $word->Documents[1]->SaveAs("test.doc");
pas d'erreur hormis le fait que word ne se lance pas et  n'apparaît pas et si je laisse s'éxécuter cette fameuse ligne j'ai un uncaught exception 'com_exception' la commande a échoué, déjà si mon word se lançait et apparaissait ce serait un grand progrès.
Ah oui je suis sous vista c'est un serveur de dev.
Merci d'avance à ceux qui prendront la peine de me lire.
Commenter la réponse de cs_brian85
Messages postés
213
Date d'inscription
dimanche 8 juin 2003
Dernière intervention
9 février 2012
0
Merci
Je ne sais pas mais tu a bien verifier que cela passe avec vista car les COM ne sont pas comme les autres. Et si ton code fonctionne sous vista, il n'est pas sur qu'il fonctionne sous un autre serveur autre que vista avec un office different.

La librairie Pear reste comme meme le mieux, c'est du reverse ingenering, donc ca creer de vrai fichier, si ils font les fichiers xls il doivent bien faire le doc.

Voila ustement un lien qui fait tous les document office : Lien

Citt_jr
Bats toi avec les meilleurs, crève avec le reste
Commenter la réponse de citt
Messages postés
213
Date d'inscription
dimanche 8 juin 2003
Dernière intervention
9 février 2012
-1
Merci
Je vient de trouver la réponse a ma questions. Le probleme vient en fait des droits d'acces et d'execution du service qu'il faut modifier sur le serveur ;)

Citt_jr
Bats toi avec les meilleurs, crève avec le reste
Tsubara.net
Commenter la réponse de citt

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.