Chargement des addins lorsque Excel est instancié par programmation
Je suis en train de créer une nouvelle instance de microsoft Excel en utilisant VBA à l'aide de:
Set XlApp = New Excel.Application
Le problème est que cette nouvelle instance de microsoft Excel ne prend pas en charge tous les compléments que la charge quand j'ouvre Excel normalement...il n'y a rien dans l'Application Excel objet pour le chargement dans tous les spécifiée par l'utilisateur addins?
Je ne suis pas en train de charger un module complémentaire spécifique, mais plutôt à la nouvelle application Excel de se comporter comme si l'utilisateur a ouvert elle-même, donc je suis vraiment à la recherche d'une liste de tous les sélectionnés par l'utilisateur des compléments qui habituellement la charge lors de l'ouverture d'Excel.
source d'informationauteur Jon Fournier
Vous devez vous connecter pour publier un commentaire.
J'ai regardé dans ce problème, et de l'Application.Collection Addins semble avoir toutes les addins répertoriés dans le menu Outils->Addins menu, avec une valeur booléenne indiquant si un complément est installé. Donc, ce qui semble fonctionner pour moi maintenant est de parcourir tous les modules complémentaires et si .Installé = vrai alors que j'ai défini .Installé à Faux et à l'arrière de Vrai, et qui semble se charger correctement mon addins.
À l'aide de
CreateObject("Excel.Application")
aurait le même résultat que l'utilisation deNew Excel.Application
malheureusement.Vous aurez à charge les Compléments que vous avez besoin individuellement par le chemin d'accès au fichier & nom à l'aide du
Application.Addins.Add(string fileName)
méthode.Je pars de cette réponse ici pour quiconque ayant rencontré ce problème, mais à l'aide de JavaScript.
Un peu de fond... Dans mon entreprise nous avons un 3ème partie web app qui a utilisé du JavaScript pour lancer Excel et de générer une feuille de calcul à la volée. Nous avons aussi un Excel add-in qui remplace le comportement du bouton Enregistrer. L'add-in vous donne la possibilité d'enregistrer le fichier en local ou en ligne de notre système de gestion de documents.
Après que nous avons mis à niveau vers Windows 7 et Office 2010, nous avons remarqué un problème avec notre feuille de génération de web app. Lorsque le code JavaScript généré une feuille de calcul dans Excel, tout à coup le bouton Enregistrer ne fonctionnait plus. Vous cliquez sur enregistrer et rien ne s'est passé.
L'aide d'autres réponses ici, j'ai été en mesure de construire une solution en JavaScript. Essentiellement, nous permettrait de créer de l'Application Excel objet en mémoire, puis de recharger un complément spécifique pour obtenir notre comportement du bouton enregistrer retour. Voici une version simplifiée de notre correctif:
Essayer:
Set XlApp = CreateObject("Excel.Application")