Afficher par vba des commandbouttons

eliot raymond

XLDnaute Occasionnel
Bonjour a toutes et tous, forum,

Je souhaiterai svp par un petit code vba afficher dans un UserForm automatiquement des CommandButtons

soit une petite matrice de 10 X 10 collés les uns aux autres, avec pour cotes Height = 18 et Width = 24

Comme dans le fichier ci-joint pour EX:

Merci a vous et de votre aide

Bonne après midi

Raymond
 

Pièces jointes

  • CommandButton.xlsm
    14.4 KB · Affichages: 56
  • CommandButton.xlsm
    14.4 KB · Affichages: 54
  • CommandButton.xlsm
    14.4 KB · Affichages: 58

fhoest

XLDnaute Accro
Re : Afficher par vba des commandbouttons

Bonjour,

Voici pour toi un code qui pourra te convenir, a toi de l'adapter.

Au plaisir.
 

Pièces jointes

  • CommandButton.xlsm
    24.3 KB · Affichages: 56
  • CommandButton.xlsm
    24.3 KB · Affichages: 58
  • CommandButton.xlsm
    24.3 KB · Affichages: 59

eliot raymond

XLDnaute Occasionnel
Re : Afficher par vba des commandbouttons

Bonsoir Fhoest,

Merci pour ta réponse et pour le code, c'est fort gentil, je regarde pour adapter a mon programme,

par contre je vais peut etre les mettre dans un frame ou dans l'UserForm et j'ai oublier de demander comment on

on efface les frames ou les commandbouttons dans l'userform ou dans les frames

si tu sais comment je suis preneur.

Encore merci a toi

Bonne soirée Cdlt Raymond
 

Hulk

XLDnaute Barbatruc
Re : Afficher par vba des commandbouttons

Hello Eliot, Fhoest, Forum :)

Vu que je me suis amusé (plutôt arraché les cheveux :cool:) à y faire...

Il fait des séries de 5...

Bon week !
 

Pièces jointes

  • CommandButton(V1).xlsm
    19.9 KB · Affichages: 55

fhoest

XLDnaute Accro
Re : Afficher par vba des commandbouttons

Bonjour Hulk,Raymond
Pour répondre @ Eliot sur la question de comment effacer
mettre ceci dans le fichier de Hulk, ou le mien mais en l'adaptant.
Code:
sub effacer ()
For Each c In Me.Controls
If c.Caption Like "*" & "Btn" & "*" Then Controls.Remove c.Name
Next
end sub
A +:D
 

eliot raymond

XLDnaute Occasionnel
Re : Afficher par vba des commandbouttons

Bonjour a toutes et tous, forum

Bonjour Hulk

Merci pour ta réponse et le code, super gentil de ta part, ça marche je regarde ton code pour voir comment ca fonctionne

Avant de close le sujet et si il te reste encore quelques cheveux LOL

je souhaiterai si tu veux bien savoir comment effacer les commandBouttons

Peut importe:

le nombre de buttons et qu'il soient dans un Frame ou dans un UserForm

Encore merci pour ton aide, vu l'heure bon app

a plus tard Hulk Raymond
 

eliot raymond

XLDnaute Occasionnel
Re : Afficher par vba des commandbouttons

Bonjour Hulk,Raymond
Pour répondre @ Eliot sur la question de comment effacer
mettre ceci dans le fichier de Hulk, ou le mien mais en l'adaptant.
Code:
sub effacer ()
For Each c In Me.Controls
If c.Caption Like "*" & "Btn" & "*" Then Controls.Remove c.Name
Next
end sub
A +:D

Merci de ta réponse qui c'est croisé avec celle de hulk

merci pour le code d'effacement, je test ça après déjeuner

Désolé pour le croisement

Encore merci et bon app

Cdlt Raymond
 

eliot raymond

XLDnaute Occasionnel
Re : Afficher par vba des commandbouttons

Salut fhoest,

Un petit soucis sans rien avoir modifier de ton code ou de celui de l'ami hulk
ton code pour effacer les commandbuttons bug

voici l'erreur dans les codes : Erreur de compilation utilisation incorrecte du mot clé ME


Merci et a plus tard Raymond
 
Dernière édition:

fhoest

XLDnaute Accro
Re : Afficher par vba des commandbouttons

Voici le code que j'ai mis dans le fichier de Hulk.
Code:
Option Explicit
Dim c As Control

Sub effacer()
For Each c In Me.Controls
If c.Caption Like "*" & "Btn" & "*" Then Controls.Remove c.Name
Next
End Sub
Private Sub CommandButton1_Click()
    
    Dim t, i, nbr, combien, depTop, depLeft, tablo(100) As Integer
    Dim bouton
    Call effacer
    On Error Resume Next
    

    Application.ScreenUpdating = False
    
    combien = Application.InputBox("Combien de bouton ?", "Nombre de bouton", , Type:=1)
    
    If combien = 0 Then Exit Sub
    
    depTop = 20
    depLeft = 20
    
    For nbr = 1 To combien
        
        'Faut inclure un Frame si tu le veux dans un Frame
        'Set bouton = Frame1.Add("forms.CommandButton.1")
        
        Set bouton = Controls.Add("Forms.CommandButton.1")
        With bouton
            For i = 0 To 100
                For t = 5 To 500 Step 5
                    tablo(i) = t
                    If tablo(i) = nbr - 1 Then
                        depTop = depTop + 20
                        depLeft = depLeft - 135 '(5 x 27 = 135)
                    End If
                    .Left = depLeft + ((nbr - 1) * 27)
                    .Top = depTop
                    .Width = 27
                    .Height = 18
                    .Caption = "Btn" & nbr
                Next t
                Exit For
           Next i
        End With
    Next nbr
    
    Application.ScreenUpdating = True
    
End Sub
chez moi il fonctionne.
a essayer...
A+
 

eliot raymond

XLDnaute Occasionnel
Re : Afficher par vba des commandbouttons

Bonjour a toutes et tous, forum

bonjour fhoest,

Merci pour ta réponse c'est sympa,

ça marche pas, j'ai mis le code qui efface les boutons dans un module

je n'ai rien modifier, je te joint le fichier que je viens encore d'essayer en vain.

PS: Je ne sais pas si c'est important mais les boutons seront vides OU juste coloriés

et il me faut juste effacer que le nombre de CommandBoutton créer par vba

Les autres Labels, autres commandboutons etc etc ne soit pas etre effacer bien entendu.

je te souhaite un bon Dimanche

au plaisir de relire

Cdlt RaymondRegarde la pièce jointe CommandButton(01).xlsm
 

fhoest

XLDnaute Accro
Re : Afficher par vba des commandbouttons

Bonjour et bon dimanche également.

Voici ton fichier corrigé j'espère qu'il fonctionnera chez toi car ici ton va bien.
voir le code dans le module.
afin que les autres controls ne soient pas effacer il ne faut surtout pas qu'ils contiennent dans leur nom "Btn".
Ainsi ils ne seront pas effacer.

@+:D
 

Pièces jointes

  • CommandButton(01)_rectifier_fhoest.xlsm
    132.6 KB · Affichages: 36

eliot raymond

XLDnaute Occasionnel
Re : Afficher par vba des commandbouttons

Salut fhoest,

Merci pour les modifications, ça fonctionne, j'ai du sans doute mal mi prendre :( mais j'ai bien compris


Par contre ça n'efface pas les CommandButtons si ils sont colorisés, vides j'ai trouver, avec un nom ou un chiffre

c'est bon aussi mais en couleurs ça marche pas

Regarde svp la photo ci-jointe

Bon Dimanche

A plus tard Raymond erreur.jpg
 

Pièces jointes

  • erreur.jpg
    erreur.jpg
    50.1 KB · Affichages: 77
  • erreur.jpg
    erreur.jpg
    50.1 KB · Affichages: 75

Discussions similaires

Statistiques des forums

Discussions
312 206
Messages
2 086 201
Membres
103 156
dernier inscrit
Ludo94130