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 :

renommer commandbutton activex [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Par défaut renommer commandbutton activex
    Bonjour,

    J'aimerais renommer un contrôle activex "Commandbutton" via cette macro :

    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
    Sub RenommerBoutons()
     
        Dim usf As Object
         Dim ctl As Object
         Dim i As Byte
         Dim j As Byte
     
        Set usf = ThisWorkbook.VBProject.VBComponents("Feuil2")
     
        For Each ctl In usf.Designer.Controls
             If TypeName(ctl) = "CommandButton" Then
                 i = i + 1
                 ctl.Name = "Toto" & i
             End If
         Next
     
        For Each ctl In usf.Designer.Controls
             If TypeName(ctl) = "CommandButton" Then
                 j = j + 1
                 ctl.Caption = "Toto" & j
             End If
         Next
     
    End Sub
    Mais cela bugue à cet endroit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Set usf = ThisWorkbook.VBProject.VBComponents("Feuil2")
    en me mettant : "L'accès par programme au projet Visual Basic n'est pas viable"... Quelqu'un pourrait-il m'aider ?

    Merci d'avance,

    lbroc84

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Je n'ai pas la version 2007 sous la main, mais sous 2003 je ferais cela.

    Menu Outils>Macro>Sécurité, dans onglet "Editeurs approuvés" cocher la case "Faire confiance au projet Visual Basic"

  3. #3
    Membre averti
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Par défaut
    Bonjour,

    Je vous remercie pour votre aide.

    Sous MO 2007, dans "Developpeur", il y a "Sécurité des macros" puis "Editeurs approuvés" mais je n'ai rien figurant dans cette option. Je ne peux rien cocher. Cette option est vide.

    Comment puis-je faire apparaitre "Faire confiance au projet visual basic" ?

    Merci,

    lbroc84

  4. #4
    Expert confirmé
    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
    Par défaut
    Bonjour,

    comme ceci :

    Nom : Ormonth-Data44.jpg
Affichages : 1288
Taille : 110,7 Ko

    Cordialement,

    Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points

    Didier

  5. #5
    Membre averti
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Par défaut
    Bonjour,

    Merci beaucoup... En effet, cela fonctionne à ce niveau-là lorsque j'ai tické ce que vous indiquiez...

    Mais maintenant ca bugue à cette phrase-là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       For Each ctl In usf.Designer.Controls
    en indiquant "Variable Objet ou variable de bloc With non définie"...

    Savez-vous pourquoi ?

    Merci

    lbroc84

  6. #6
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    et en déclarant Ctl comme control?


  7. #7
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132

  8. #8
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut heu...!!!
    bonjour

    si je comprend bien tu veu renomer un ou x bouton dans ton usf

    tu dis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each ctl In usf.Designer.Controls
    si la macro est dans le userform tu met

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each ctl In me.Controls
    si la macro est dans un autre module (standard)tu met

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each ctl In nom de l'userform.Controls
    au plaisir
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  9. #9
    Membre averti
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Par défaut
    Bonjour,

    Merci pour votre aide...

    A vrai dire, j'essaie tout simplement de renommer des boutons de contrôle Active X (commandbutton1) qui se trouvent sur ma feuille de calcul (et non dans une useform)...

    J'avais trouvé cette macro et j'essayais donc de la retranscrire dans mon cas...

    Mais je n'y arrive pas...

    Je vais regarder d'un peu plus près les solutions que vous m'avez donné...

    Si vous en avez d'autres, n'hésitez pas...

    lbroc84

    Rebonjour,

    J'ai regardé un peu la doc...

    J'ai essayé ceci pour simplifier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub RenommerBoutons()
     
    Dim Obj As OLEObject
     
    Set Obj = Sheets("Feuil2").OLEObjects("CommandButton1")
    With Obj
    .Name = "Mise à jour des liens"
    End With
     
    End Sub
    Mais il m'indique "L'indice n'appartient pas à la sélection" en buguant sur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Obj = Sheets("Feuil2").OLEObjects("CommandButton1")
    ...??

    Merci d'avance de votre aide

    lbroc84

  10. #10
    Membre averti
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Par défaut
    J'ai trouvé...

    En fait, il n'est pas nécessaire d'utiliser une macro.. il suffit juste d'appuyer sur "Propriétés" lorsqu'on est sur le bouton et de changer le nom dans les propriétés...

    Merci à tous pour votre aide...

    lbroc84

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

Discussions similaires

  1. [XL-2010] CommandButton activeX créé inactif avant changement de feuille
    Par Morkai dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/04/2015, 12h31
  2. Visual Studio - Copier et renommer un projet (ActiveX)
    Par ShevchenKik dans le forum Visual C++
    Réponses: 7
    Dernier message: 02/09/2013, 19h55
  3. [ActiveX] Visibilité d'une propriété
    Par paradise dans le forum Composants VCL
    Réponses: 2
    Dernier message: 14/11/2002, 19h33
  4. ActiveX : linker en statique ?
    Par tut dans le forum MFC
    Réponses: 8
    Dernier message: 07/11/2002, 11h24
  5. Renommer un repertoire
    Par Sitas dans le forum Langage
    Réponses: 5
    Dernier message: 14/08/2002, 12h56

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