Faire le lien entre Excel et C++ via la library XLibrary

cabotin974 Messages postés 4 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 14 mars 2006 - 13 mars 2006 à 16:15
cabotin974 Messages postés 4 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 14 mars 2006 - 14 mars 2006 à 18:16
http://www.aspfr.com/auteurdetail.aspx?ID=718682 Salut!

Je suis débutant en C++, enfin j'ai quelques progs dans les pattes mais bon...
Ce que j'aimerais, c'est pouvoir aller lire des données dans un excel, utiliser des fonction C++ pour effectuer des calculs et ensuite écrire les résultats dans excel.
Il me semble que normalement il faut utiliser une dll et ensuite en VBA déclarer tte les fonctions C++.
Mais la personne qui fixe mon cahier des charges a une autre idée. Il m'a demandé dans un premier temps de passer à visualc++.NET. Il ne connait pas vraiment cet environnement mais il veut que j'expérimente un peu.
Apparemment (de ce que j'ai compris), il utilise un type de projet différent qui s'appelle ATL. Il propose ensuite d'utiliser une librarie qui s'appelle XLibrary et qui gère l'interface avec excel. J'ai regardé et effectivement cette librairie contient plein de fonctions qui vont lire ou écrire dans excel. Selon la personne qui m'encadre cette nouvelle technologie permet après d'avoir accès directement au fonction de la classe C++ en utilisant le truc VBA disponnible avec Excel.
En gros l'idée de mon encadrant c qu'il dispose de plusieurs fonction et classes C++ qui font pleins de calculs différents. Son but c'est d'utiliser la librairie XLibrary pour écrire et lire dans excel et ensuite pouvoir utilser les fonctions C++ directement avec VBA.

Comme vous avez pu le constater il y a plein de zones d'ombre mais la personne qui m'encadre ne sait pas vraiment elle non plus de quoi elle parle. Je dois selon elle me transformer en "jo la débrouille" pour ce projet.
S'il y a des gens qui voient de quoi je parle ou qui ont de la doc (accessible) sur la library XLibrary où sur les projets ATL, des tutroriaux où des codes commenté, PLEASE HELP!!. Si vous n'avez rien de tout ça mais que vous avez des pistes à me prposer... PLEASE HELP!!
Je vous remercie d'avance!

4 réponses

cs_Xaviou Messages postés 154 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 2 octobre 2009 1
13 mars 2006 à 23:34
Tiens mon gars,
Notre ami Arnotic avait proposé une source de ce genre il y a quelques temps :

http://www.cppfrance.com/code.aspx?ID=30147

De plus, il y a dans le zip un lien vers un prog microsoft qui permet de transformer du code VBA en code C.
Je t'assure que c'est bluffant, et surtout, que ça marche (pour word, excel, .....)

A essayer, ça pourra sûrement t'aider.
0
cabotin974 Messages postés 4 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 14 mars 2006
14 mars 2006 à 10:55
Merci!
Mais en fait g déjà trouvé cette source mais je ne comprends pas le code. Et dans le readme, il n'y a pas d'explication de ce que fait le script. Quand je lance le .exe, ça me lance excel mais je n'en sais pas plus.
J'aurais bien aimé déjà trouvé de la doc au moins pour pouvoir comprendre ce script.
0
cs_Xaviou Messages postés 154 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 2 octobre 2009 1
14 mars 2006 à 18:02
En fait, ce code n'est ni plus ni moins que le résultat donné par l'utilitaire de conversion fourni par microsoft pour transformer le code VBA suivant :

dim app as object
set app = createobject("Excel.Application")
app.visible = true
app.workbooks.add
app.activesheet..cells(1,1).value = "Youpi"

Toutes les variables sont gérées en tant que Variant
Tu devrais faire quelques essais avec l'utilitaire microsoft, ça aide bien à comprendre le mécanisme.

Sinon, je veux bien te filer un coup de main, mais il faut me donner quelques infos sur ce que tu as à faire exactement.
0
cabotin974 Messages postés 4 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 14 mars 2006
14 mars 2006 à 18:16
Merci!
Effectivement je m'en suis rendu compte après coup.
C vraiment pas mal effectivement!!
Le pb c que le cahier des charges fixe l'utilisation d'une library spéciale XLibrary qui gère les interface avec excel. Cette library a été codée par Appwizzard mais il n'y a aucune doc dessus sur le web, aucun tutorial. Plus généralement, j'ai jamais utilisé VisualC++.Net et les objet ATL.
Je crois que je vais avant tout cherché de ce coté là. En effet, j'ai regardé les fonctions de la XLibrary et elles font tout ce que je veux dans excel, lire, écrire,...
Si tu sais où je peux trouver de quoi commencer sur les objet ATL, et sur VisualC++.Net, ça m'aiderait bien par contre.

Encore merci c vraiment sympa de m'aider
0
Rejoignez-nous