IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[2.0][VS2005][OFFICE 2003] : Création d'un add-in excel


Sujet :

C#

  1. #1
    Membre régulier Avatar de agueffier
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2002
    Messages : 93
    Points : 114
    Points
    114
    Par défaut [2.0][VS2005][OFFICE 2003] : Création d'un add-in excel
    Bonjour à toutes et à tous,

    je rencontre un soucis avec la création de mon premier Add-In Excel avec Visual Studio 2005.

    J'ai déjà réalisé en VB ( ) des Add-In Excel mais avec VS2005 c'est un échec .

    Impossible de connecter le Add-IN. En registry tout ressemble à ce que j'ai pour une DLL produite à partir de VB, mais là nada... Excel ne tient pas compte de ma DLL.

    Quelqu'un a-t-il déjà une expérience la dessus et si oui que faut-il faire pour créer un tel Add-in depuis Visual Studio 2005 (je demande juste les manip de base pour connecter le add-in et récupérer l'instance de l'application Excel... pour le reste je devrais encore savoir faire ).

    D'avance merci

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    dans l'aide msdn, tu as un exemple de comment faire un add-in excel

    (en gros, il faut faire un object COM en mettant dans les propriétés de ton projet : register for COM Interop

    et apres, quelques lignes de code...

    Je te copie l'exemple par charité (humour ;...)

    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
    using System.Runtime.InteropServices;
     
    namespace TaxTables
    {
        [ClassInterface(ClassInterfaceType.AutoDual)]
        public class TaxTables
        {
            public static double Tax(double income)
            {
                if (income >      0 && income <=   7000) {return            (.10 * income);}
                if (income >   7000 && income <=  28400) {return   700.00 + (.15 * (income - 7000));}
                if (income >  28400 && income <=  68800) {return  3910.00 + (.25 * (income - 28400));}
                if (income >  68800 && income <= 143500) {return 14010.00 + (.28 * (income - 68800));}
                if (income > 143500 && income <= 311950) {return 34926.00 + (.33 * (income - 143500));}
                if (income > 311950)                     {return 90514.50 + (.35 * (income - 311950));}
                return 0;
            }
     
            [ComRegisterFunctionAttribute]
            public static void RegisterFunction(System.Type t)
            {
                Microsoft.Win32.Registry.ClassesRoot.CreateSubKey
                    ("CLSID\\{" + t.GUID.ToString().ToUpper() + "}\\Programmable");
            }
     
            [ComUnregisterFunctionAttribute]
            public static void UnregisterFunction(System.Type t)
            {
                Microsoft.Win32.Registry.ClassesRoot.DeleteSubKey
                    ("CLSID\\{" + t.GUID.ToString().ToUpper() + "}\\Programmable");
            }
        }
    }

    Et voila... ca convient ?

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  3. #3
    Membre régulier Avatar de agueffier
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2002
    Messages : 93
    Points : 114
    Points
    114
    Par défaut
    Bonsoir,

    Merci TheMonz31, même si cela n'était pas tout à fait ce dont j'avais besoin

    J'ai fini par trouver ce qui clochait... une de case à cocher oubliée...

    Je vais maintenant tester la création de macro VBA depuis un Shared Add-In écrit en C#

    Si j'y arrive et que cela intéresse quelqu'un qu'il n'hésite pas à me laisser un message

    A bientôt

  4. #4
    Membre régulier Avatar de agueffier
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2002
    Messages : 93
    Points : 114
    Points
    114
    Par défaut
    Bonjour,

    Puisque j'ai fini par le trouver ( ), je vous livre le lien qui va bien sur MSDN et qui apporte LA solution à ma question :
    http://msdn2.microsoft.com/en-us/library/aa663367.aspx

    Cordialement


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Création de graphique en VBA sous Office 2003 : OK, Office 2007, déformé :(
    Par [ZiP] dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 30/04/2010, 14h03
  2. Problème création .mst office 2003 Pro
    Par azertyman dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 31/01/2008, 11h19
  3. Réponses: 2
    Dernier message: 19/10/2007, 13h49
  4. Normal.dot Office 2003
    Par licorne dans le forum Word
    Réponses: 2
    Dernier message: 29/12/2004, 12h06
  5. Réponses: 8
    Dernier message: 17/12/2004, 15h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo