ASP.NET - GÉNÉRATION D'UN FICHIER EXCEL (EN UTILISANT L'OBGET COM EXCEL) EN ASP.

Messages postés
32
Date d'inscription
jeudi 31 janvier 2002
Statut
Membre
Dernière intervention
22 février 2005
- - Dernière réponse : cs_awjan
Messages postés
14
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
26 janvier 2011
- 15 avril 2009 à 19:08
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/8936-asp-net-generation-d-un-fichier-excel-en-utilisant-l-obget-com-excel-en-asp-net

Afficher la suite 
cs_Domilo
Messages postés
32
Date d'inscription
jeudi 31 janvier 2002
Statut
Membre
Dernière intervention
22 février 2005
-
Personellement, je n'arrive pas à mettre en place ce principe. (avec Office XP anglais et .Net français)

Les premiers tests bloquaient sur le fait que ASPNET n'avait pas les droits d'exécution.
J'ai résolue cela en ouvrant les droits avec DCOMCNFG.EXE.

Mais je me heurte maintenant à une erreur juste sur la ligne ".visible = False" avec :
"System.InvalidCastException: QueryInterface for interface Excel._Application failed."

J'ai fait des essais en changeant le CurrentCulture mais en vain...

Si quelqu'un peux éclairer ma lanterne...
Merci.
cs_fabrice69
Messages postés
1766
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
4 -
La je suis desole pour toi mais ne pourrais pas t'aider sur ta config (les melanges de lamgues pour les machines sont un vrai casse tete, car souvent les applications ont de tres legeres differences qui font planter certaines options), regarde sur google avec ASP.NET Excel XP.

On ne sait jamais, bonne chance

F___
cs_Barz
Messages postés
12
Date d'inscription
vendredi 28 septembre 2001
Statut
Membre
Dernière intervention
18 décembre 2008
-
J'ai le meme problème que Domilo concernant les droits d'execution, j'aimerais bien que l'on me détaille la manip exacte à faire pour enlever ce problème.

Merci d'avance
cs_Domilo
Messages postés
32
Date d'inscription
jeudi 31 janvier 2002
Statut
Membre
Dernière intervention
22 février 2005
-
Barz,
Je n'avais pas de problème de droits d'exécution, mais il semble que ma machine avait (et a hélas toujours) un conflit quelque part.
J'ai réussi à fair tourner telquel mon programme sur une autre.
As-tu réussi à utiliser DCOMCNFG ?

Maintenant je n'utilise plus cette façon de générer une page excel, je passe par du HTML henrichi avec des propriétés destinées à excell. Ce n'est pas évident à décrire d'autant que j'utilise du XSL.
cs_Barz
Messages postés
12
Date d'inscription
vendredi 28 septembre 2001
Statut
Membre
Dernière intervention
18 décembre 2008
-
Non j'ai pas reussi, il ne veut pas me prendre le Excel.exe dans les composants com. J'ai lu sur un autre site que cela pouvait être du au fait que c'était un exe comme composant (version 10) alors que les versions d'avant c'était des dll.
cs_stilgar
Messages postés
2
Date d'inscription
mercredi 8 janvier 2003
Statut
Membre
Dernière intervention
28 octobre 2004
-
ça pourra peut-^^etre vous aider:
http://support.microsoft.com/kb/257757/fr

c la solution Made In Microsoft.

c pas génial mais ça donne des pistes de recherche
cs_stilgar
Messages postés
2
Date d'inscription
mercredi 8 janvier 2003
Statut
Membre
Dernière intervention
28 octobre 2004
-
sinon j'ai réussi
il faut aller d'ans l'utilitaire dcomcnfg

et là changer les autorisations pour EXCEL
pekbob
Messages postés
5
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
17 mai 2007
-
Bonjour à tous, je ne sais pas trop où poster ce code mais peu-être que vous pourrez apporter réponse à mes questions:

Je suis en train de faire un petit Intranet avec des liens pointants sur des fichiers excel se trouvant sur un serveur. Lorsque l'on clique sur un lien, cela ouvre l'application excel du côté client avec le fichier du serveur (on peut écrire+lire et sauvegarder).

J'ai essayer de le faire de 2 façons: ASP et ASP.ET

En ASP, aucune erreur, voici mon code:

<HTML>
<HEAD>
<SCRIPT LANGUAGE=VBScript>
Dim objExcel

Sub Btn1_onclick()

set monexcel = CreateObject("Excel.Application")
monexcel.Visible = true
monexcel.Workbooks.Open("\\nom_serveur\dossier_excel\fichier.xls")
End Sub

</SCRIPT>
<TITLE>Launch Excel</Title>
</HEAD>

Click the button to open the Excel Spreadsheet




</HTML>

Et en ASP.NET, voici mon code:

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim monexcel As Object
Dim wb As Object

monexcel = CreateObject("Excel.Application")
wb = monexcel.Workbooks.Open(FileName:="chemin_du_fichier", ReadOnly:=False)
monexcel.Visible = True


End Sub

Le problème vient du code en ASP.NET. J'arrive à le faire tourner en local (en simulant un serveur web) et en lançant mon code avec localhost dans le navigteur Internet mais lorsque je met les fichiers sur mon serveur, et que j'y accède via l'IP privé (car c'est un Intranet) la page se lance normalement s'écrit "Done" en bas, aucune erreur ni rien mais l'application Excel ne se lance pas côté client!!!! Alors qu'en ASP normal (2.0) je fais la même manip, sur le même serveur et là, aucun problème, tout fontionne normalement !!!!

des idées ???


La version de IIS sur mon serveur et la version 6 et c'est un Windows serveur 2003. J'ai aussi été dans l'utilitaire dcomcnfg et mis les droits sur le lancement d'Excel.

En tout cas merci pour votre aide.
cs_awjan
Messages postés
14
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
26 janvier 2011
-
Bonjour,
J'essaye d'insérer un combo dans la feuille excel par code, et je ne sais pas comment faire, Si quelqu'un a la solution???

MERCI.