Ce Microsoft support de:
Automatisation Add-ins et l'Assistant Fonction Chaque automatisation Add-in a sa propre catégorie dans l'Assistant Fonction Excel. Le nom de catégorie est le ProgID pour le complément; vous ne pouvez pas spécifier un nom de catégorie différent pour les fonctions du module complémentaire Automation. De plus, il n'y a aucun moyen de spécifier des descriptions de fonctions, des descriptions d'arguments ou de l'aide pour les fonctions du Complément Automation dans l'Assistant Fonction.
Cet article mentionne également que d'autres types d'add-ons sont prioritaires dans la liste des formules.
Mon approche préférée est d'écrire un addin VBA qui enveloppe la fonctionnalité que vous exposer dans votre addin actuel. Je le fais en mettant en place mon code dans une DLL COM (qui prend en charge IDTExtensibility2 il charge en tant que complément COM), puis accéder à d'autres méthodes sur cet objet via emballages vba très minces:
Public Function AddinInMethod (param As String) As Variant
Dim oAdd As Object
On Error GoTo Err
Set oAdd = Application.COMAddIns.item("MyProgID").Object
AddInMethod = oAdd.AddInMethod(param)
Exit Function
Err:
AddinMethod = "#" & Err.Description
End Function
Cela fonctionne bien pour moi puisque tout mon code est C++. Comme vous écrivez du code C#, il vaudrait peut-être mieux implémenter votre ajout en tant que complément C# VSTO. Je ne l'ai pas fait personnellement, mais il semble qu'il y ait beaucoup de fonctionnalités de cadre que vous pouvez utiliser comme ce type d'extension (même si vous êtes limité aux versions plus récentes d'Office).