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 :

Vba : outils / Références / Late binding [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2019
    Messages : 4
    Par défaut Vba : outils / Références / Late binding
    Bonjour à tous,
    Je suis à la recherche de documentation sur les références utilisables dans VBA, notamment les objets exposés par chacune (tout au moins les plus courantes).
    Je me débrouille pour l'écriture de code Vba, mais ça coince quelquefois car les utilisateurs sont sous XL-2010 ou XL-2007.
    L'idée est de faire du Late Binding pour certains composants, mais où trouver les objets exposés par la référence correspondante ?
    par exemple :
    - après Dim toto as object, que mettre dans Set toto = createObject("?") pour un VBComponent, un IRibbonControl etc...

    Merci d'avance si vous avez un lien qui va bien sous le coude.

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Pour les objets Excel : https://docs.microsoft.com/fr-fr/off...l/object-model
    Pour les objets VBA communs à toutes les applications : https://docs.microsoft.com/fr-fr/off...uage-reference

    Pour les autres applications, voir les rubriques de ce forum concernant ces applications.

  3. #3
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2019
    Messages : 4
    Par défaut Merci
    Merci, Menhir
    Je pense que ça va aider à la manœuvre.
    Je m'attendais à plus précis chez Microsoft, genre
    nom de la référence (DLL ou exe) -> objets exposés -> attributs, méthodes...
    Bon, j'ai déjà de quoi lire pour un moment.
    Cordialement,

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par Ba340.Gest01 Voir le message
    Je m'attendais à plus précis chez Microsoft, genre
    nom de la référence (DLL ou exe) -> objets exposés -> attributs, méthodes...
    Bin... c'est déjà le cas si tu regardes l'arborescence de la partie gauche de l'aide Excel.
    Sauf qu'on ne parle pas de DLL mais d'applications, ce qui me semble plus simple.

  5. #5
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2019
    Messages : 4
    Par défaut Salut, Menhir
    Bon, tu vas dire que je chipote, mais :

    - je veux, par exemple, utiliser des objets comme IRibbonControl, FileDialog etc...
    la doc dans les pages que tu me signales donne bien les attributs et méthodes de ces objets.
    Ce qui manque (ou que je ne vois pas) c'est comment savoir que pour utiliser ces objets
    je dois ajouter, toujours dans l'exemple, la référence Microsoft Office 14.0 Object Library...
    sans avoir à tâtonner en ajoutant des réfs au pif pendant de longs moments ?

    Merci encore.

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    En principe VBA se débrouille bien avec cela. Il indique les références manquantes dans la boîte de dialogue des références.

  7. #7
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par Ba340.Gest01 Voir le message
    je dois ajouter, toujours dans l'exemple, la référence Microsoft Office 14.0 Object Library...
    Perso, par défaut, j'ai toujours d'activé 4 bibliothèques : Visual Basic, Microsoft Excel, Microsoft Office et OLE Automation.

    Il manque parfois des trucs très spécifique comme la fenêtre de saisie de date (pour celle-là, bonne chance pour trouver une doc) mais la plupart du temps ça le fait.
    Avec ces quatre-là, on accède à la plupart des objets utiles dans Excel.

    Bien sûr, si on veut fureter dans d'autres appli qu'Excel (Word, PDF Creator, AutoCAD, Libre Office, etc.), il faut rajouter la DLL correspondant à cette appli.

    Concernant toutes les aides VBA, à mon avis celle d'Excel est la mieux foutue que je connaisse.

  8. #8
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 567
    Par défaut
    Bonsoir,
    Windows xp dispose de 750 api par exemple et je ne parle pas de contrôles;

    difficile de trouver une documentations exhaustive!
    google mon ami!

    deux exemple!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub test()
    Dim Fichier As Variant
    Fichier = BrowseForFile
    End Sub
    Function BrowseForFile()
        Dim shell: Set shell = CreateObject("Shell.Application")
        Dim file: Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000, "C:\")
        BrowseForFile = file.self.Path
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    PublicPropertyLetPressePapier (Value)
    Const DATAOBJECT_BINDING As String = "new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}"
        With CreateObject(DATAOBJECT_BINDING)
            .SetText Value
            .PutInClipboard
        End With
    End Property
    Public Property Get PressePapier()
    Const DATAOBJECT_BINDING As String = "new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}"
        With CreateObject(DATAOBJECT_BINDING)
            .GetFromClipboard
            PressePapier = .GetText
        End With
    End Property

  9. #9
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Au pire, ils sont dans le registre dans la section des composants COM.

    Ou bien ti peux fouiller dans cette page. Il doit y avoir un/des utilitaires pour cela:

    http://nirsoft.net/

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

Discussions similaires

  1. Access: Menu Outil/Références non disponible
    Par rimona dans le forum IHM
    Réponses: 1
    Dernier message: 09/06/2006, 09h07
  2. [VBA-E] référence colonne en fonction de son index et inversement
    Par gapgap dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 10/05/2006, 13h39
  3. [VBA-E] référence Pour fonction Excel
    Par illight dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 19/04/2006, 14h29
  4. [VBA-E]Référence à activer pour OLEObject
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/04/2006, 10h34
  5. VBA Excel : références
    Par EJO64 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 17/01/2006, 13h33

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