Bonjour,

J'essaie de créer un complement pour Excel 2007.
J'ai tenté ce code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
using System;
using System.Runtime.InteropServices;
 
namespace NAddIn
{
    [ClassInterface(ClassInterfaceType.AutoDual)]
    public class Functions
    {
        public Functions()
        {
        }
 
        public double Add2(double v1, double v2)
        {
            return v1 + v2;
        }
 
        [ComRegisterFunctionAttribute]
        public static void RegisterFunction(Type t)
        {
            Microsoft.Win32.Registry.ClassesRoot.CreateSubKey(
                "CLSID\\{" + t.GUID.ToString().ToUpper() + 
                   "}\\Programmable");
        }
 
        [ComUnregisterFunctionAttribute]
        public static void UnregisterFunction(Type t)
        {
            Microsoft.Win32.Registry.ClassesRoot.DeleteSubKey(
                "CLSID\\{" + t.GUID.ToString().ToUpper() + 
                  "}\\Programmable");
        }
    }
}
trouvé sur http://www.codeproject.com/KB/COM/excelnetauto.aspx

Je l'ai intégré dans Excel 2007.
Si je le teste en saisissant "=add2(4,3)", Excel me dit "#REF!"...
Cependant, la fonction est bien activée puisqu'elle s'ajoute dans "Complément d'application actifs" de "Compléments", alors qu'avant de taper la formule, la fonction se trouvait dans "Compléments d'application inactifs"...

Des idées ?
Merci beaucoup.
Alexandre