J?ai un problème Delphi-Excel [Résolu]

cs_nesr 6 Messages postés dimanche 16 janvier 2005Date d'inscription 21 octobre 2008 Dernière intervention - 20 oct. 2008 à 09:07 - Dernière réponse : cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention
- 7 déc. 2011 à 12:28
Bonjour à tous , j’ai un problème



Jai fait une application en DELPHI7 qui ouvre un fichier Excel existant, et permet de faire des recherches-modifications et ajout de nouvelle données à ma base, seulement le problème c’est que, les changements que j’apporte je ne les retrouves pas dans le classeur Excel (pas de sauvegarde) je retrouve les données initiales ?



Et puis quand je veux exécuter (vXLWorkbook.Save; vMSExcel.Quit;)  j’ai le message d’erreur suivant : « le projet a provoqué une classe d’exception Evariantinvalideoperror avec le message d’opération de variant incorrecte’, processus stoppé. Utilisez pas à pas ou exécuter pour continuer. »




 y’a-t-il quelqu’un qui puisse m’aider s’il vous plait ?







Nes
Afficher la suite 

7 réponses

Répondre au sujet
fbalien 265 Messages postés dimanche 7 décembre 2003Date d'inscription 11 novembre 2016 Dernière intervention - 20 oct. 2008 à 10:29
+3
Utile
Bonjour

comment initialisez vous votre variable ?
perso je fait comme ceci

Var
  RH : variant;

begin
  RH := CreateOLEObject('Excel.application');
  RH.Visible:= False;
  RH.workbooks.open(strNomfichierSource);
  .... modif des cellules

  RH.Workbooks[nomfichier].save;
  RH.quit;
  RH := unassigned;
end;

si çà peut vous aidez
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de fbalien
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 21 oct. 2008 à 09:25
+3
Utile
Bonjour,
dans votre procédure :procedure TForm1.Quiter1Click(Sender: TObject);<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

var vXLWorkbooks, vXLWorkbook : variant;

    vMSExcel : variant;

vos variables sont locales alors que vous les avez déjà définies globalement..
elles ne sont donc pas renseignées..

il faut donc les supprimer.

cantador
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_cantador
cs_nesr 6 Messages postés dimanche 16 janvier 2005Date d'inscription 21 octobre 2008 Dernière intervention - 20 oct. 2008 à 11:17
0
Utile
Voilà ce que j’ai fait<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>







var








    vXLWorkbooks, vXLWorkbook : variant;








    vMSExcel : variant;








   
vFileName : AnsiString;




 







Dans le source projet  j’ai mis :








 






try








   vMSExcel := GetActiveOleObject('Excel.Application');








  except








    vMSExcel := CreateOleObject('Excel.Application');








  end;








  vMSExcel.Visible := true;








  vFileName := 'D:\LAID3\ISOR''08 appl\ISOR''08 appl REV2\baseISOR08.xls';








  vXLWorkbooks := vMSExcel.Workbooks;








  vXLWorkbook := vXLWorkbooks.Open(vFileName); 








 








et dans la unit1 dans le menu quiter j’ai mis:








procedure TForm1.Quiter1Click(Sender: TObject);







var vXLWorkbooks, vXLWorkbook : variant;








    vMSExcel : variant;







begin








  vXLWorkbook.Save;








  vXLWorkbook.Close;








  vMSExcel.Quit;








  vMSExcel := unassigned;







  if messagedlg('Voulez-vous quitter?',mtinformation,[mbyes,mbno],0)=mryes then    application.Terminate;



end;







Nes
Commenter la réponse de cs_nesr
cs_nesr 6 Messages postés dimanche 16 janvier 2005Date d'inscription 21 octobre 2008 Dernière intervention - 21 oct. 2008 à 13:53
0
Utile
Je viens de corriger mon programme d’après vos recommandations (cantador et fbalien), et je vous remercie pour vos réponses, seulement j’ai maintenant un autre problème, après fermeture de l’application je ne peux plus ouvrir le fichier Excel en mode lecture écriture, j’ai un message qui dit que «  le fichier est verrouillé pour modification » comment faire pour pouvoir y accéder en mode lecture –écriture pour effectuer des modifications?



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 





Salutations







Nes
Commenter la réponse de cs_nesr
oudjedi 2 Messages postés samedi 28 mai 2005Date d'inscription 7 décembre 2011 Dernière intervention - 7 déc. 2011 à 09:32
0
Utile
Salut , comment faire la programmation d'execel sous delphi 7 sur tout faire un tableau ,mise en forme , ..ect sous delphi
Commenter la réponse de oudjedi
oudjedi 2 Messages postés samedi 28 mai 2005Date d'inscription 7 décembre 2011 Dernière intervention - 7 déc. 2011 à 09:33
0
Utile
Salut , comment faire la programmation d'execel sous delphi 7 sur tout faire un tableau ,mise en forme , ..ect sous delphi
oud_nab@yahoo.fr
Commenter la réponse de oudjedi
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 7 déc. 2011 à 12:28
0
Utile
@oudjedi :

merci de faire un autre post pour cette question qui par ailleurs
a déjà été traitée ici ou là..

il suffit de chercher sur le site ou sur internet.

Mots clés : delphi + EXCEL + OLE

cantador
Commenter la réponse de cs_cantador

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.