Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4053 connectés 

 


Dernière réponse
Sujet : Thread sous delphi Arg!!!
Beowulf up

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Beowulf up
Beowulf Au secour UP please
Beowulf SVp c'est urgent Merci d'avance
Beowulf Salut,le message et long mais pour les flemmards qui sont méga doué je simplifie ma question en demandant
 
Est-il possible d'appeler une macro VBA a partir d'un thread fait en delphi. Avec un programme a la con sans thread j'ai essayé c'est possible, mais avec une thread j'arrive pas. Voila, pour les autres voici mon problème en détails :
 
J'ai créé un thread sous delphi qui va me permettre d'établir une liaison avec Excel avec le composant TExcelApplication. Ma classe s'appelle Excel et mon composant s'apelle Xl. J'ai un constructeur, ou j'initialise ma connexion avec excel, et une procédure Execute qui contient le code à executer une fois la connexion établie. Le probleme c'est que dans la procédure Execute je dois a un moment appeler l'exécution d'une macro vba faite en Excel avec cette commande :  
 
Xl.run('le nom de ma macro');
 et la j'ai une erreur d'execution au moment de l'ouverture de la macro (EOlEeXCEPTION AVEC le message : CoInitialize n'a pas été appelé). Le fichier contenant la macro et pourtant bien ouvert sous Excel.
 
J'ai alors essayé de mettre cette ligne de commande dans une procédure a part que j'ai appelé RunC, et d'appeler cette procédure à partir de mon Excel.Execute avec un  
synchronize(RunC);
 
Et là il me met l'erreur suivante :
EOleException avec le message :
 
Un appel sortant ne peut pas être effectué étant donné que l'application répartit un appel entrant synchrone.
 
En gros je comprend qui ne veut pas me lancer la macro vba parce que ca va entrainer l'apparition d'un autre processus gérer par Excel et indépendant de Delphi et ca va foutre la merde dans mon thread. Mais j'ai absoluement besoin d'executer une macro vba dans un thread Delphi.
 
Voila je vous remercie tous d'avance pour toutes les réponses que j'espere vous pourrez m'apporter.
 
:)

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)