J'ai un AddIn que je veux appeler via Excel interop à partir d'une application winforms C#.Comment charger un Addin Excel à l'aide d'Interop
Je ne peux pas charger l'addin etc. à moins que je ne le désinstalle et le réinstalle à chaque fois (cela ressemble apparemment à Excel not loading addins when you use interop - btw, ne peut pas obtenir leur exemple pour fonctionner en C#). Malheureusement, cela est lent et ennuyeux pour l'utilisateur, donc je dois le rationaliser.
Je veux avoir une instance d'Excel mais charger un addin déjà installé sans forcer ce problème d'installation/réinstallation.
J'ai recherché et cherché, mais tout ce que je trouve sur google donne la solution à installer/réinstaller. Est-ce qu'il y a un autre moyen? Le complément est installé, je veux juste que Excel le charge.
C'est ce que je fais en ce moment (tiré de conseils google'd):
// loop over the add-ins and if you find it uninstall it.
foreach (AddIn addIn in excel.AddIns)
if (addIn.Name.Contains("My Addin"))
addin.Installed = false;
// install the addin
var addin = excel.AddIns.Add("my_addin.xll", false);
addin.Installed = true;
Pouvez-vous expliquer pourquoi vous devez faire installer/désinstaller? J'essaie de comprendre la façon dont Excel charge addin, une fois que vous l'avez configuré pour charger à chaque fois. Pourquoi faut-il installer/désinstaller? – shahkalpesh
D'où vient ce code? je suppose un autre Excel AddIn? ou juste une application C# winform? –
J'ai mis à jour la question avec les points que vous avez soulevés mais rapidement: Excel ne charge pas les addins via interop, tout ce que j'ai trouvé sur le net dit que la désinstallation/installation est la solution. Le code est appelé à partir d'une application winforms C# – user35149