begin process at 2012 02 10 08:53:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

J'AI BESOIN D'AIDE !!!! :O

 > 

Problème avec Excel (ole)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème avec Excel (ole)

mercredi 2 avril 2003 à 11:48:53 | Problème avec Excel (ole)

FeuilleMorte

J'ai toujours mon probleme lorsque je veux acceder a excel via Delphi.
J'ai bien ajouter les uses : comobj, variants et même excel 97 ou Excel 2000
Mon code pour acceder a Excel est le suivant :
1)var
2) v_ex : variant;
3)begin
4) v_ex := createOleObject('Excel.Application');
5) v_ex.workbooks.open('c:\test\test.xls');
6) ...
7)end;

Avant ce code fonctionnait très bien dans mon application mais depuis un certain temps j'ai un message d'erreur à l'exécution de la ligne 4).
Voici le message "Le projet prj_toto.exe a provoque une classe d'exception EOleSysError avec le message 'CoInitialize n'a pas ete appele'. Processus stoppé. Utilisez Pas-a-pas ou Executer pour continuer".

Suite a ce message d'erreur, bete et dissipline j'ai rajouter la fonction CoInitialize mais rien y fait. Je suis oblige de creer dans un projet annexe cette fonction pour me permettre d'accéder à Excel, or je veux conserver tous mes traitements dans le même projet pour faciliter la maintenance de celui-ci.

J'attend vos suggestions car la je commence vraiment à desesperer.

Merci d'avance.

FeuilleMorte
mercredi 2 avril 2003 à 13:56:01 | Re : Problème avec Excel (ole)

RMD

Bonjour,
As-tu testé sur un autre PC ?
Cela vient peut-être de ton excel.

Sinon, je ne voie pas pourquoi ton code plante...

RMD

www.Logiciels-RMD.com


-------------------------------
Réponse au message :
-------------------------------

> J'ai toujours mon probleme lorsque je veux acceder a excel via Delphi.
> J'ai bien ajouter les uses : comobj, variants et même excel 97 ou Excel 2000
> Mon code pour acceder a Excel est le suivant :
> 1)var
> 2) v_ex : variant;
> 3)begin
> 4) v_ex := createOleObject('Excel.Application');
> 5) v_ex.workbooks.open('c:\test\test.xls');
> 6) ...
> 7)end;
>
> Avant ce code fonctionnait très bien dans mon application mais depuis un certain temps j'ai un message d'erreur à l'exécution de la ligne 4).
> Voici le message "Le projet prj_toto.exe a provoque une classe d'exception EOleSysError avec le message 'CoInitialize n'a pas ete appele'. Processus stoppé. Utilisez Pas-a-pas ou Executer pour continuer".
>
> Suite a ce message d'erreur, bete et dissipline j'ai rajouter la fonction CoInitialize mais rien y fait. Je suis oblige de creer dans un projet annexe cette fonction pour me permettre d'accéder à Excel, or je veux conserver tous mes traitements dans le même projet pour faciliter la maintenance de celui-ci.
>
> J'attend vos suggestions car la je commence vraiment à desesperer.
>
> Merci d'avance.
>
> FeuilleMorte
mercredi 2 avril 2003 à 18:05:07 | Re : Problème avec Excel (ole)

FeuilleMorte

Tout d'abord merci d'avoir répondu aussi rapidement.

Mon programme reagi de la meme maniere sur les autres postes et meme avec d'autre version d'Excel. Cependant si je prend mon code et que je l'insert dans un nouveau projet cela fonctionne!!! Je peux toujours opter pour cette solution. Cependant j'aimerai concerver un seul et meme projet pour tous mes modules, mais apparament ca va pas etre possible...

En esperant avoir la solution miracle prochainement,

je vous salut

FeuilleMorte


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
> As-tu testé sur un autre PC ?
> Cela vient peut-être de ton excel.
>
> Sinon, je ne voie pas pourquoi ton code plante...
>
> RMD
>
> www.Logiciels-RMD.com
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > J'ai toujours mon probleme lorsque je veux acceder a excel via Delphi.
> > J'ai bien ajouter les uses : comobj, variants et même excel 97 ou Excel 2000
> > Mon code pour acceder a Excel est le suivant :
> > 1)var
> > 2) v_ex : variant;
> > 3)begin
> > 4) v_ex := createOleObject('Excel.Application');
> > 5) v_ex.workbooks.open('c:\test\test.xls');
> > 6) ...
> > 7)end;
> >
> > Avant ce code fonctionnait très bien dans mon application mais depuis un certain temps j'ai un message d'erreur à l'exécution de la ligne 4).
> > Voici le message "Le projet prj_toto.exe a provoque une classe d'exception EOleSysError avec le message 'CoInitialize n'a pas ete appele'. Processus stoppé. Utilisez Pas-a-pas ou Executer pour continuer".
> >
> > Suite a ce message d'erreur, bete et dissipline j'ai rajouter la fonction CoInitialize mais rien y fait. Je suis oblige de creer dans un projet annexe cette fonction pour me permettre d'accéder à Excel, or je veux conserver tous mes traitements dans le même projet pour faciliter la maintenance de celui-ci.
> >
> > J'attend vos suggestions car la je commence vraiment à desesperer.
> >
> > Merci d'avance.
> >
> > FeuilleMorte
>
mercredi 2 avril 2003 à 18:35:10 | Re : Problème avec Excel (ole)

RMD

Utilises-tu un variant avant cet appel ?
Peut-être as-tu oublié un Quit avant de redemander un CreateOleObject ?

RMD

www.Logiciels-RMD.com


-------------------------------
Réponse au message :
-------------------------------

> Tout d'abord merci d'avoir répondu aussi rapidement.
>
> Mon programme reagi de la meme maniere sur les autres postes et meme avec d'autre version d'Excel. Cependant si je prend mon code et que je l'insert dans un nouveau projet cela fonctionne!!! Je peux toujours opter pour cette solution. Cependant j'aimerai concerver un seul et meme projet pour tous mes modules, mais apparament ca va pas etre possible...
>
> En esperant avoir la solution miracle prochainement,
>
> je vous salut
>
> FeuilleMorte
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Bonjour,
> > As-tu testé sur un autre PC ?
> > Cela vient peut-être de ton excel.
> >
> > Sinon, je ne voie pas pourquoi ton code plante...
> >
> > RMD
> >
> > www.Logiciels-RMD.com
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > J'ai toujours mon probleme lorsque je veux acceder a excel via Delphi.
> > > J'ai bien ajouter les uses : comobj, variants et même excel 97 ou Excel 2000
> > > Mon code pour acceder a Excel est le suivant :
> > > 1)var
> > > 2) v_ex : variant;
> > > 3)begin
> > > 4) v_ex := createOleObject('Excel.Application');
> > > 5) v_ex.workbooks.open('c:\test\test.xls');
> > > 6) ...
> > > 7)end;
> > >
> > > Avant ce code fonctionnait très bien dans mon application mais depuis un certain temps j'ai un message d'erreur à l'exécution de la ligne 4).
> > > Voici le message "Le projet prj_toto.exe a provoque une classe d'exception EOleSysError avec le message 'CoInitialize n'a pas ete appele'. Processus stoppé. Utilisez Pas-a-pas ou Executer pour continuer".
> > >
> > > Suite a ce message d'erreur, bete et dissipline j'ai rajouter la fonction CoInitialize mais rien y fait. Je suis oblige de creer dans un projet annexe cette fonction pour me permettre d'accéder à Excel, or je veux conserver tous mes traitements dans le même projet pour faciliter la maintenance de celui-ci.
> > >
> > > J'attend vos suggestions car la je commence vraiment à desesperer.
> > >
> > > Merci d'avance.
> > >
> > > FeuilleMorte
> >
>
jeudi 3 avril 2003 à 03:33:01 | Re : Problème avec Excel (ole)

stailer


Va voir sur http://www.developpez.com
Tu as 2 tutos sur l'accés à Word et Excel par OLE vraiments tops.

<-- St@iLeR -->


-------------------------------
Réponse au message :
-------------------------------

> Utilises-tu un variant avant cet appel ?
> Peut-être as-tu oublié un Quit avant de redemander un CreateOleObject ?
>
> RMD
>
> www.Logiciels-RMD.com
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Tout d'abord merci d'avoir répondu aussi rapidement.
> >
> > Mon programme reagi de la meme maniere sur les autres postes et meme avec d'autre version d'Excel. Cependant si je prend mon code et que je l'insert dans un nouveau projet cela fonctionne!!! Je peux toujours opter pour cette solution. Cependant j'aimerai concerver un seul et meme projet pour tous mes modules, mais apparament ca va pas etre possible...
> >
> > En esperant avoir la solution miracle prochainement,
> >
> > je vous salut
> >
> > FeuilleMorte
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Bonjour,
> > > As-tu testé sur un autre PC ?
> > > Cela vient peut-être de ton excel.
> > >
> > > Sinon, je ne voie pas pourquoi ton code plante...
> > >
> > > RMD
> > >
> > > www.Logiciels-RMD.com
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > J'ai toujours mon probleme lorsque je veux acceder a excel via Delphi.
> > > > J'ai bien ajouter les uses : comobj, variants et même excel 97 ou Excel 2000
> > > > Mon code pour acceder a Excel est le suivant :
> > > > 1)var
> > > > 2) v_ex : variant;
> > > > 3)begin
> > > > 4) v_ex := createOleObject('Excel.Application');
> > > > 5) v_ex.workbooks.open('c:\test\test.xls');
> > > > 6) ...
> > > > 7)end;
> > > >
> > > > Avant ce code fonctionnait très bien dans mon application mais depuis un certain temps j'ai un message d'erreur à l'exécution de la ligne 4).
> > > > Voici le message "Le projet prj_toto.exe a provoque une classe d'exception EOleSysError avec le message 'CoInitialize n'a pas ete appele'. Processus stoppé. Utilisez Pas-a-pas ou Executer pour continuer".
> > > >
> > > > Suite a ce message d'erreur, bete et dissipline j'ai rajouter la fonction CoInitialize mais rien y fait. Je suis oblige de creer dans un projet annexe cette fonction pour me permettre d'accéder à Excel, or je veux conserver tous mes traitements dans le même projet pour faciliter la maintenance de celui-ci.
> > > >
> > > > J'attend vos suggestions car la je commence vraiment à desesperer.
> > > >
> > > > Merci d'avance.
> > > >
> > > > FeuilleMorte
> > >
> >
>
jeudi 3 avril 2003 à 09:47:00 | Re : Problème avec Excel (ole)

FeuilleMorte

non RDM je n'utilise pas de variant avant le code présent dans mon premier message, et si je fait un variant.quit j'ai également un message d'erreur (normal je pense vu que je n'ai pas reussi a le lancer).

Même avec GetActiveOleObject('Excel.Application'); j'ai le message d'erreur par rapport a CoInitialize.


St@iLeR j'avais deja regarde sur developper.com ou il y a une autre methode pour appeler excel mais elle a ete sans succes (je ne l'ai pas retrouvee sur le site aujourd'hui). Ce que je ne comprend pas c'est qu'avant mon code fonctionnait tres bien mais depuis certaines modifications (qui n'ont rien d'exceptionnel) cette fiche plante. Sur ma fiche j'ai uniquement 2 TDatetimPicker et 2 boutons. Je ne fait aucun traitement avant mon appel au variant (a part l'initialisation de mes dates)

Mon problème est survenu lorsque j'étais encore sous Delphi 5 et le passage a Delphi 6 n'a rien changé (je ne pense pas passer à Delphi 7 pour l'instant).

Je croise quand meme encore les doigts, on ne sait jamais.

FeuilleMorte


-------------------------------
Réponse au message :
-------------------------------

>
> Va voir sur http://www.developpez.com
> Tu as 2 tutos sur l'accés à Word et Excel par OLE vraiments tops.
>
> <-- St@iLeR -->
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Utilises-tu un variant avant cet appel ?
> > Peut-être as-tu oublié un Quit avant de redemander un CreateOleObject ?
> >
> > RMD
> >
> > www.Logiciels-RMD.com
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Tout d'abord merci d'avoir répondu aussi rapidement.
> > >
> > > Mon programme reagi de la meme maniere sur les autres postes et meme avec d'autre version d'Excel. Cependant si je prend mon code et que je l'insert dans un nouveau projet cela fonctionne!!! Je peux toujours opter pour cette solution. Cependant j'aimerai concerver un seul et meme projet pour tous mes modules, mais apparament ca va pas etre possible...
> > >
> > > En esperant avoir la solution miracle prochainement,
> > >
> > > je vous salut
> > >
> > > FeuilleMorte
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Bonjour,
> > > > As-tu testé sur un autre PC ?
> > > > Cela vient peut-être de ton excel.
> > > >
> > > > Sinon, je ne voie pas pourquoi ton code plante...
> > > >
> > > > RMD
> > > >
> > > > www.Logiciels-RMD.com
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > J'ai toujours mon probleme lorsque je veux acceder a excel via Delphi.
> > > > > J'ai bien ajouter les uses : comobj, variants et même excel 97 ou Excel 2000
> > > > > Mon code pour acceder a Excel est le suivant :
> > > > > 1)var
> > > > > 2) v_ex : variant;
> > > > > 3)begin
> > > > > 4) v_ex := createOleObject('Excel.Application');
> > > > > 5) v_ex.workbooks.open('c:\test\test.xls');
> > > > > 6) ...
> > > > > 7)end;
> > > > >
> > > > > Avant ce code fonctionnait très bien dans mon application mais depuis un certain temps j'ai un message d'erreur à l'exécution de la ligne 4).
> > > > > Voici le message "Le projet prj_toto.exe a provoque une classe d'exception EOleSysError avec le message 'CoInitialize n'a pas ete appele'. Processus stoppé. Utilisez Pas-a-pas ou Executer pour continuer".
> > > > >
> > > > > Suite a ce message d'erreur, bete et dissipline j'ai rajouter la fonction CoInitialize mais rien y fait. Je suis oblige de creer dans un projet annexe cette fonction pour me permettre d'accéder à Excel, or je veux conserver tous mes traitements dans le même projet pour faciliter la maintenance de celui-ci.
> > > > >
> > > > > J'attend vos suggestions car la je commence vraiment à desesperer.
> > > > >
> > > > > Merci d'avance.
> > > > >
> > > > > FeuilleMorte
> > > >
> > >
> >
>
jeudi 3 avril 2003 à 12:33:31 | Re : Problème avec Excel (ole)

stailer

T'es sur que t'as bien fait ca pour ouvrir ta feuille Excel :

var
vXLWorkbooks, vXLWorkbook, vMsExcel : variant ;
afilename : string;
begin
vMSExcel := CreateOleObject('Excel.Application');
aFileName := ExtraCtFilePatH(Application.ExeName + 'factures\facture_modèle.xls';

//Tu peux faire aussi : afilename := 'C:\mafeuille.xls';

vXLWorkbooks := vMSExcel.Workbooks;
vXLWorkbook := vXLWorkbooks.Open(aFileName);
end;




<-- St@iLeR -->
jeudi 3 avril 2003 à 17:20:34 | Re : Problème avec Excel (ole)

FeuilleMorte

oui ,
mais comme j'ai un message d'erreur a la premiere ligne :
vMSExcel := CreateOleObject('Excel.Application');
je ne peux pas aller plus loin
J'ai peut etre du a un moment changer quelque chose dans mon projet qui altere ce fonctionnement ...


FeuilleMorte


-------------------------------
Réponse au message :
-------------------------------

> T'es sur que t'as bien fait ca pour ouvrir ta feuille Excel :
>
> var
> vXLWorkbooks, vXLWorkbook, vMsExcel : variant ;
> afilename : string;
> begin
> vMSExcel := CreateOleObject('Excel.Application');
> aFileName := ExtraCtFilePatH(Application.ExeName + 'factures\facture_modèle.xls';
>
> //Tu peux faire aussi : afilename := 'C:\mafeuille.xls';
>
> vXLWorkbooks := vMSExcel.Workbooks;
> vXLWorkbook := vXLWorkbooks.Open(aFileName);
> end;
>
>
>
>
> <-- St@iLeR -->
>
mercredi 20 avril 2005 à 14:33:27 | Re : Problème avec Excel (ole)

Millenod

Essaye ceci :
- ajouter 'ActiveX' à la clause 'Uses'
-rajouter les lignes suivantes à la fin de ta fiche :

Initialization
  CoInitialize(nil);

Finalization
  CoUninitialize;
mardi 4 octobre 2005 à 17:45:34 | Re : Problème avec Excel (ole)

dominique.stock

Tu as du trouver une solution , mais sinon, j'ai eu le même souci .
Dans les options du debogger : j'avais coché  "Activer support inter processus COM".

Cela planté l'ouverture d'excel dans le debogger.


1 2

Cette discussion est classée dans : message, problème, excel, projet, ex


Répondre à ce message

Sujets en rapport avec ce message

export de delphi à excel [ par FeuilleMorte ] Voilà j'utilisais le code suivant et tout se passait comme sur des roulette mais un jour le message suivant est apparu : "Le projet toto.exe a provoqu Problème d'exécution [ par SALIMO03 ] salut mes amis j'ai crée une application avec Delphi 7 au début touts été bien 'mais maintenant , un message d'erreur qui s'affiche au niveau de mon problème de fonctionnement de projet en builder [ par polobou ] [b]BONJOUR[/b] j'ai un problème dans l'exécution de mon projet en c++ builder. j'ai rendre le installable avec installsheild j'ai tester cette appli Enregistrement du projet [ par youhibadelphi ] Salut tlm J’ai changé plusieurs fois l'alias de mon projet après chaque message d'erreur, pourquoi ce message d'erreur chaque fois, est ce qu'il a une Problème Requète - ADOQUERY [ par guy jeuniaux ] Re bonjour Etant donné que je n'ai pas de réponse concernant le problème "ADOQUERY NE RENVOIE RIEN" je me permet de reformuler mon problème : En fait Problème Sauvegarde Projet Delphi 7 Version Portable ??? [ par tuss ] Voila mon problème : [^^doute] Depuis l'année dernière, c'est à dire ~2 mois j'utilise DELPHI Version 7.0 (Build 4.453). Tout marchais bien jusqu'à ce [PROBLEME] Reception des messages d'un client en chinois :s [ par TiT91 ] Bonjour alors voilà j'ai un problème, lorsque j'envoie un message d'un client vers un serveur, le serveur reçoit le message en Chinois Impossible de v exception EDEngineError [ par youhibadelphi ] Le message suivant : Le projet projet.exe a provoqué une classe d'exception EDEngineError avec le message 'paramètre incorrect'. Trop de fichiers ouve [BAR]problème de mp3 (Thomson lyra) [ par jenin85 ] bonjour j'espère trouver de l'aide car j'ai un problème très embêtant avec mon mp3 Thomson lyra : Lorsque j'éssaye de l'allumer le message "Profiling EDarabaseError [ par Dadou31 ] Bonjour je travaille sur un projet delphi et je recois ce message après compilation : "Le projet toto.exe a déclenché la classe EDarabaseError avec


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,170 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales