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 :

groupe propriete commandbouton


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut groupe propriete commandbouton
    bonsoir à tous
    j'ai qql question concernant les commandbouton.

    j'ai 13 commandbutton que je desirerai initialisé .
    a) il y a til une commande ou un code pour faire cela sur l'ensemble les boutons sans etre obligé de le faire pour chaque bouton individuellement ? (je precise que tous les boutons ont la meme action (voir B)

    b) lorsqu'un bouton à ete cliquez , je souhaiterai le faire changer de couleur (par defaut gris), ex qu'il devienne VERT et que l'instruction lance , pour l'exemple msgbox ("coucou bounton " & x) ou X est le n° du bouton cliqué ?


    merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu peux écrire les procédures des 13 boutons par le code.
    La macro pour placer le code des boutons dans la feuille de code de la feuille de calculs.
    En supposant que tes boutons soient dans la feuil1 de ton classeur, que les boutons aient tous le même code... un exemple de code à placer dans un module standard
    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
    Sub EcrireDuCodeDansUnModule()
    Dim i, j, nomFich, x As Long
    Dim tablo(3)
        nomFich = ThisWorkbook.Name 'Nom du classeur concerné à adapter
        For i = 1 To Application.VBE.VBProjects.Count
            If InStr(Application.VBE.VBProjects(i).Filename, nomFich) <> 0 Then
                For Each LeModule In Application.VBE.VBProjects(i).VBComponents
                    If LeModule.Name = "Feuil1" Then
                        For Each LeBouton In Worksheets("Feuil1").Shapes
                            tablo(1) = "Private Sub " & LeBouton.Name & "_Click()"
                            tablo(2) = "Msgbox ""Je suis " & LeBouton.Name & """"
                            tablo(3) = "End sub"
                            For j = 1 To 3
                                x = LeModule.CodeModule.CountOfLines + 1
                                LeModule.CodeModule.InsertLines x, tablo(j)
                            Next
                        Next
                    End If
                Next
            End If
        Next i
    End Sub
    NB - Le classeur doit être enregistré pour être identifié comme projet par la macro.
    A+

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut fin
    bonsoir
    ok merci

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/08/2011, 15h04
  2. [2.0][C#]UserControl, Groupe de proprieté non modifiable !!
    Par chnew dans le forum Windows Forms
    Réponses: 4
    Dernier message: 07/01/2006, 00h30
  3. gestion des groupes
    Par muaddib dans le forum QuickReport
    Réponses: 3
    Dernier message: 31/12/2002, 11h01
  4. [] Datagrid vide après modification des propriétés
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 20/09/2002, 16h37

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