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

Macros et VBA Excel Discussion :

Appel d'un activeX


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de jbrasselet
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mars 2006
    Messages
    1 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 022
    Par défaut Appel d'un activeX
    Bonjour,

    j'ai réalisé une bibliothèque en .Net permettant d'appeler un logiciel externe (JIRA en l'occurence)
    Via une application console pas de souci.

    Mon objectif est de l'appeler via Excel 2007 afin de remplir automatique un classeur.
    J'ai donc créer un module et ajouter ma bibliothèque (.tlb) dans les références de mon classeur.

    Ensuite, je tente de l'appeler :
    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
     
    Public Sub TestJira()
     
        Dim o As JiraToExcel_Fonctions.JiraService
        Set o = New JiraToExcel_Fonctions.JiraService
     
        Call o.Connecter("user", "password")
        Dim requete As String
        requete = "project = UTL AND issuetype in (Bug, Task, ""Change request"")"
     
        Dim issues As Variant
        issues = o.ObtenirDemandes(requete, 999)
     
        Sheets("JIRA2").Select
        For i = 0 To UBound(issues)
            With Sheets("JIRA2")
                .Range("A" & i).Value = issues(i).Key
            End With
        Next i
    End Sub
    J'obtiens le message sur la ligne Set o =

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Erreur d'exécution '429' : 
    Un composant ActiveX ne peut pas créer d'objet
    Auriez-vous une idée du pourquoi de la chose ?
    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut Bonsoir,
    par défaut vb charge la référence VB6FR.DLL qui est en quelque sorte son framwork.

    visual studio 10 (.net) fait la même chose.

    je n'est pas fais le test mais je pense qu'il faut charger le framwork.net dan VB
    Images attachées Images attachées  

  3. #3
    Invité
    Invité(e)
    Par défaut
    j'ai trouvé ça
    Cela est dû au fait que les fonctions et les procédures (les méthodes donc…) .NET peuvent avoir plusieurs signatures, et visiblement, le compilateur VBA ne s’y retrouve pas… On observe dans l’explorateur d’objets de Visual Studio (voir copie d’écran un peu plus haut) une multitude de signatures différentes pour la méthode Append de l’objet StringBuilder. Pas moins de 19 !

    Pour « invoquer » une signature, il suffit (ce n’était pas trivial…) de suffixer la méthode Append par son numéro. Pour adresser la bonne signature, celle qui attend du type « String » en paramètre, il faut suffixer par un numéro mais lequel ? Et bien, cela se corse… Il faut essayer toutes les possibilités ! Sur certains forums, il est dit qu’il suffit de donner le numéro inverse de l’ordre d’apparition dans l’explorateur d’objet, mais je n’ai rien constaté de tel. Non, il faut tester toutes les combinaisons une à une, jusqu’à la suivante :
    Code URL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'les lien externe sont mal vue et c'est compréhensible car ils peuvent disparaître!
    URL="http://www.apoema-consulting.com/utiliser-des-fonctions-du-framework-net-en-vba/"
    Images attachées Images attachées  

  4. #4
    Membre Expert
    Avatar de jbrasselet
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mars 2006
    Messages
    1 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 022
    Par défaut
    Merci de tes réponses.

    J'ai tenté d'ajouté le ddl du framework .Net mais malheureusement cela ne résout pas mon problème.
    Le second lien ne semble pas répondre à mon problème.

  5. #5
    Invité
    Invité(e)
    Par défaut Bonjour,
    Je vais suivre l'évolution de ce poste, faire des recherche de mon coté car je suis particulièrement intéressé par le sujet.

    Si je trouve la réponse je reviens vers toi.

    Si c'est toi qui trouve conclus ton poste en donnant ta solution.

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/05/2012, 17h47
  2. Appel d'un activex dans un autre activex MFC
    Par rapidone dans le forum MFC
    Réponses: 2
    Dernier message: 17/07/2009, 11h48
  3. Appel de controle ActiveX personnalise depuis javascript
    Par ay1@duclert.org dans le forum Windows
    Réponses: 1
    Dernier message: 23/05/2007, 15h55
  4. Appeler une Dll ActiveX VB avec C++
    Par alexorel dans le forum C++
    Réponses: 1
    Dernier message: 06/09/2006, 15h56
  5. Comment appeller un ActiveX de type Exe en JAVASCRIPT ?
    Par mandarindi dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/03/2005, 09h57

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