2008-09-24 7 views
3

Bonjour,WinForms dans Excel (2002) et add-ons

Je suis sur le point de commencer à écrire un add-in Excel pour Excel 2002. Le complément doit appeler un formulaire. Évidemment, je peux écrire le formulaire dans VBA. Ma question est - est-il un moyen facile/bon d'appeler un .NET (j'utilise 3.5) à partir d'Excel, et le formulaire doit être capable d'écrire des choses dans Excel de la même manière qu'un formulaire Excel 2002 natif aurait?

Répondre

2

Office XP ... oui, fonctionnellement, vous pouvez manipuler excel à partir de l'add-in ou inversement, mais évidemment, il nécessite plus de codage par rapport à VBA.

La solution la plus puissante consiste à utiliser l'automatisation OLE, mais ce n'est pas la plus facile à coder et à prendre en charge. Si vous en avez vraiment besoin et avez cette option - obtenir quelque chose comme http://www.add-in-express.com/ - il donne un bon emballage sur l'automatisation Excel et résout les problèmes les plus courants. Quoi qu'il en soit, add-in-express ressemble au produit le plus mature supportant Office XP et vaut le détour pour avoir une meilleure idée de la façon dont le code .Net et Excel peuvent interagir.

Il existe plusieurs façons d'implémenter l'échange de données entre Excel et le code .Net dans un complément: Automatisation OLE, appels aux fonctions COM de VBA, RTD, pas sûr si quelqu'un utilise encore DDE. Il y a des efforts d'installation, des défis de programmation et des problèmes de maintenance/stabilité pour chacun d'entre eux.

+0

Est-ce que cela fonctionnerait pour Excel 2002, ou juste une version plus récente (laquelle?)? Je ne pense pas que j'écrirais un complément géré depuis que j'utilise 2002, mais corrigez-moi si je me trompe. Je prévoyais d'appeler un formulaire géré à partir d'un complément VBA. Très bonne réponse, cependant, je suis en train de voter. – AlanR

+0

Oui, tout cela est pertinent pour 2002. Dans Office 2003, il y a VSTO, qui est le premier choix le plus naturel. Quant au terme «géré», il est pertinent pour la mise en œuvre, mais pas pour le déploiement; vous devez toujours exposer le complément en tant que COM. Désolé pour la confusion, je vais corriger la réponse. –

+0

Lien MSDN sur la création de compléments gérés http://support.microsoft.com/kb/302901 –

Questions connexes