2009-07-20 5 views
0

Je crée une solution de classeur Excel dans Visual Studio 2008. Lorsque je compile la solution, j'obtiens un fichier .XLS et un fichier .DLL (personnaliser l'assemblage).Comment fermer immédiatement/fermer le classeur Excel VSTO lors de la personnalisation de l'assemblage introuvable

Je peux maintenant démarrer la feuille Excel en double-cliquant sur le fichier .XLS et ma feuille fonctionne avec tout mon code C#.

Mais dans la distribution de cette personnaliser dll indisponible. Je redémarre le classeur Excel et le message contextuel Excel "Impossible de trouver l'assemblage de personnalisation ou de le charger Vous pouvez toujours modifier et enregistrer le document Contactez votre administrateur ou l'auteur de ce document pour obtenir de l'aide." Avoir des détails et bouton OK. Si j'appuie sur le bouton OK, le classeur Excel fonctionne toujours. Comment fermer ou éteindre automatiquement ce classeur?

Merci

Répondre

0

Vous ne pouvez pas faire cela de manière fiable. Vous devez être en mesure d'exécuter du code pour fermer le classeur et si la DLL contenant votre code ne peut pas être trouvée, vous ne pouvez pas exécuter le code à partir de là pour fermer le classeur. Vous pouvez peut-être pirater un gestionnaire VBA Workbook_Open dans le même classeur qui vérifierait la présence de votre code managé et essayer de fermer le classeur s'il ne s'est pas chargé correctement, mais cela suppose que vous pouvez exécuter le VBA , que les paramètres par défaut sur Excel 2007 et supérieur empêcheraient (même si les VBA ont été signés). Je ne sais pas non plus quel gestionnaire fonctionnerait en premier en présence du code managé et de VBA.

Questions connexes