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 :

Accès aux propriétés d'un contrôle placé directement sur une feuille de calcul


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 43
    Points
    43
    Par défaut Accès aux propriétés d'un contrôle placé directement sur une feuille de calcul
    Bonjour,
    Je n'arrive pas à obtenir la liste des propriétés des contrôles placés directement sur une feuille de calcul. Il n'affiche que les propriétés de la feuille 1 feuille sur laquelle se trouve les contrôles.
    Comment faire pour obtenir la liste des propriétés des objets placés sur la feuille de calcul ?

    En vous remerciant pour votre aide,
    WChris79

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,
    D'où l'intérêt de préciser la version qu'on utilise. Sur excel 2007, dans l'onglet développeur => mode création => doubleclick sur le controle.

    Ou dans l'éditeur VBA doubleclick sur la feuille contenant le controle et en haut à droit, selectionner le controle

    bonne journée
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 43
    Points
    43
    Par défaut
    Bonjour,
    Excusez-moi, j'utilise Office 2010.
    Rien ne marche la fenêtre des propriétés n'affiche que les propriétés de la feuille que je sélectionne, et les contrôles ne figurent nul part ... Et dans l'onglet "Développeur" un clic sur "Propriétés" affiche les propriétés de Feuil1.*

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Dans excel, je répête, doucle click sur le controle en mode création ou Click droit => propriétés.

    Dans l'éditeur double click sur la feuille concernée à gauche et en haut à droite sélectionnes le controle, j'imagine qu'il ne doit pas y avoir de grosses différences avec V2007, ci-dessous l'image dans l'éditeur (pour V2007)
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 43
    Points
    43
    Par défaut
    Je viens de voir qu'elle erreur j'ai commise. Il faut sélectionner des contrôles ActiveX et non pas comme je l'ai fait des controles de formulaire.
    Maintenant ça marche pas de problème pour afficher les propriétés du contrôle.
    Encore merci.
    wChris79

  6. #6
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Ok, par contre, je pense que c'est une question que j'aurais pu poser sur le forum :
    Intérêt de choisir un controle "Formulaire" plutôt qu'un "ActiveX" car perso je n'utilise que des ActiveX, je trouve ça bien plus pratique mais si les deux existent, il doit y avoir une raison.

    Bonne journée

    PS : aussitot dit, aussitôt fait :
    http://www.developpez.net/forums/d51...aires-activex/
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  7. #7
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 696
    Points
    6 696
    Par défaut
    Bonjour,

    Les Contrôles formulaires datent du temps où il n’y avait pas le VBA tel que nous le connaissons (à partir de 97) et où on passait par des macros XL4 écrites en XLM puis dans des feuilles spéciales : Macros, boîtes de dialogue etc… qui existent toujours pour compatibilité sous 2010, mais dont beaucoup ignorent l’existence (heureusement).

    Une manière simple des les distinguer est de les sélectionner :

    ActiveX => il faut passer en mode création
    Formulaire => un clic droit dessus (ou CTRL + clic gauche) (cf shapes plus loin).

    Pour les créer :

    2003 : Barre outils formulaires.
    2007 – 2010 : Onglet développeur, groupe Insérer, contrôles de formulaire.

    Intérêt des contrôles formulaires :

    Pouvoir supporter la compatibilité avec de vieilles versions (précieux dans un contexte précis).
    Extrême simplicité vu qu’ils ne réagissent qu’à un seul évènement, le clic qui lance la macro associée. (D’où l’utilisation du clic droit pour l’édition en mode simple vu que ce n’est pas un évènementiel macro pour lui).

    Ils sont liés à une macro qui figure de base dans un module standard.
    Ce sont les seuls contrôles que l’on peut insérer dans une feuille Graphique.

    Inconvénients :

    Ils n’ont pas d’existence dans l’éditeur VBE.
    Ils sont liés à une macro qui figure de base dans un module standard.
    Ils n’ont pas d’évènementiels natifs.
    Pour accéder à leurs « propriétés », il faut faire un clic droit dessus et cliquer Format de contrôle…
    Ce sont, de source, des objets Shapes, mais leur collection, suivant leur type, figure elle dans l’objet Worksheet (Buttons par exemple).
    Le souci de ces collections est qu’on peut les évoquer (cf exemple) , mais qu’on ne trouve rien dessus dans l’aide VBA car non documentées.
    On peut confirmer qu’elles existent avec le code et dans l’explorateur d’objet en utilisant la commande « afficher les membres masqués ».

    Donc ne pas confondre Button et CommandButton.

    Exemple direct :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub DemoObsolete() 'OK excel 2010
        Worksheets(1).Buttons.Add(50, 50, 80, 20).Name = "Test" 'x,y, L, H
    End Sub
    Résultat de l’enregistreur de macro (2010)
    Sub Macro1() 'avec l'enregistreur de macros
    ActiveSheet.Buttons.Add(302.25, 135, 106.5, 32.25).Select
    Selection.OnAction = "Macro1"
    End Sub
    Bref, l'utilisation doit dépendre du contexte et de sa maîtrise du VBA.

    cordialement,

    Didier
    Didier Gonard

    Dernier tutoriel :
    Le VBA qu'est ce que c'est ?
    Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
    Cours et tutoriels pour apprendre Excel
    N'oubliez pas de mettre : ..quand c'est le cas !

Discussions similaires

  1. Réponses: 4
    Dernier message: 07/08/2014, 14h59
  2. mettre un composant DTPicker directement sur une feuille Excel
    Par Henri-gp dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/10/2012, 12h17
  3. Grouper les contrôles sur une feuille de calcul
    Par stos dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/09/2007, 15h11
  4. Contrôles (CheckBox) sur une feuille de calcul
    Par yogyx dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 04/12/2006, 09h54
  5. Accès aux propriétés ScrollBar d'un composant TMemo
    Par fausto dans le forum C++Builder
    Réponses: 2
    Dernier message: 10/10/2003, 11h08

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