Modifier écriture dans des CommandBouttons

Fermé
duduleray - 4 avril 2012 à 16:00
 dudulleray - 5 avril 2012 à 17:21
Bonjour a toutes et tous, forum



J'ai créer dynamiquement des commandbuttons par VBA qui sont positionnés dans un UserForm1 via Frame1

Je souhaiterai savoir svp comment modifier l'écriture dans les CommandBouttons SANS passer par la propriété des controls

MAIS par VBA afin de changer le style, gras etc etc

Merci d'avance de votre réponse, bonne après midi a vous

Cdlt Ray
A voir également:

8 réponses

eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
Modifié par eriiic le 4/04/2012 à 16:07
Bonjour,

exemple bascule pour gras :
CommandButton1.Font.Bold = Not CommandButton1.Font.Bold

Pour les autres propriétés faire F1 sur Font

eric
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
4 avril 2012 à 16:08
Bonjour,
ecrivez dans vba ex:
CommandButton1.Font.

quand vous aurez ecrit le dernier . vous aurez une liste deroulante pour changer
l'ecriture (style,taille.....)


Bonne suite
0
Bonsoir eriiic
bonsoir f894009


Merci a vous pour vos réponses c'est sympa, pour les commandbouttons il ont étés
créer dynamiquement par VBA

Donc on ne peut pas écrire dedans comme dans commandbuttons fait avec la boite a outils

Par la boite de propriété je sais bien le faire, Mais comment faire en VBA

si vous avez un exemple a me proposer car je ne comprends pas bien le fil de vos réponses.


Merci a vous je vous souhaite une très bonne soirée

A vous relire avec plaisir

Cdlt Ray
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
Modifié par eriiic le 4/04/2012 à 18:43
C'est bien de vba qu'on te parlait...

Lors de la création des boutons ils sont nommés.
Tu peux te servir de ce nom pour modifier ses propriétés, ou bien te servir du type de contrôle, ou une combinaison des deux.

Exemple à mettre dans le userform :
Private Sub UserForm_Click()    

    ' met en gras le contrôle nommé CommandButton1  
    CommandButton1.Font.Bold = True  

    ' boucle sur tous les contrôles :  
    Dim Ctrl As Control    
    For Each Ctrl In Me.Controls    

        'tous les contrôles dont le nom commence par Btn    
        If Left(Ctrl.Name, 3) = "Btn" Then Ctrl.Font.Bold = True    

        ' ou bien tous les contrôles de type CommandButton    
        If TypeName(Ctrl) = "CommandButton" Then Ctrl.Font.Bold = True    

    Next Ctrl    
End Sub 

Met en gras tous les contrôles dont le nom commence par Btn (quelque soit le type),
et tous les contrôles de type CommandButton

A toi de choisir la méthode

eric
0
salut eric

mes boutons apparaissent au moment ou je lance l'ouverture de l'userform

j'ai 7 fois 50 boutons qui représentent des dégradés couleurs

donc ils sont vides a part la couleur bien sur aucune écriture dedans

alors tout se passe par programmation VBA

merci pour le petit code je vais voir ce que je peux faire

Bonne soirée a toi

au plaisir de relire

Ray
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
4 avril 2012 à 19:22
Regarde la portion de code qui crée tes boutons et essaie de t'insérer à ce niveau.
C'est plus simple de régler les propriétés au moment de leur création qu'ensuite par une autre boucle.
eric
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Re eric

Merci j'ai regarder un peu le code, je paufine ca demain, la nuit porte conseil

te tiendrai au courant.

(Regarde la portion de code qui crée tes boutons et essaie de t'insérer à ce niveau)

Mais ta réponse te donne raison mais plus le choix maintenant

merci de ton aide, une bonne soirée a toi

Bye Ray
0
Bonjour Eric,

voila j'ai trouver quelques codes qui fonctionne pour modifier l'écriture SAUF pour les alignements Left - Right - Center

j'ai regarder la doc d'excel 2007 pas trouver ce dont j'ai besoin

voir svp le code ci-dessous pour les alignements qui ne fonctionne pas

Merci et bonne journée a toi

Cdlt Ray

PS: code d'hier soir, c'est bon merci

With Bouton
   .Left = (K * Largeur) + DepLeft               
   .Top = (J * Hauteur) + DepTop
   .Width = Largeur                              
   .Height = Hauteur                           
   .Tag = Nb
 ' .Font.Size = Largeur / 2                     
 ' .Caption = Nb                                
'********************* les 3 codes ci dessous pas réussi
'    .VerticalAlignment = xlCenter
'    .HorizontalAlignment = xlCenter
'    .AlignmentCenter= ??
'*********************
.Font.Bold = True
.Font.Size = 10
.Font.Name = "Arial"
.Font.Italic = False
End With
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
Modifié par eriiic le 5/04/2012 à 11:57
Bonjour,

VerticalAlignment et les autres ne sont pas des propriétés d'un bouton (ça sera valable pour positionner le texte dans une cellule, entre autres)
Dans un bouton le texte est toujours centré horizontalement et verticalement.
Fais F1 sur Font saisi dans l'éditeur pour voir ses propriétés ou bien sélectionne le bouton et regarde dans la fenetre 'propriétés'

eric
0
Re salut éric,

merci pour ta réponse, c'est gentil

je ne peux pas selectionner les boutons ils n'apparaissent que lorsque j'ouvre l'userform,

mais sur le petit code que je t'ai envoyer tout a l'heure, la je peux en vba intervenir

je souhaiterai svp pouvoir aligner a gauche ou a droite le texte dans le bouton

pour ca je n'ai pas trouver après c'est bon pour moi

Merci bonne après midi

Ray
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
5 avril 2012 à 13:32
hé, faut lire les réponses : Dans un bouton le texte est toujours centré horizontalement et verticalement.
0
RE eric

heu autant pour moi, trop pris par mon programme, pas fait attention, désolé

je ne le ferai plus LOL

Alors juste une petite question si tu veux bien et si tu sais bien sur

comment faire en vba pour insérer un caractère ou un symbole spécial justement dans bouton

dont j'ai déja parler via mon Userform1 et Frame1

Au cas ou, si tu peux me faire svp un exemple ca sera plus facile pour moi, je te promets

de lire tout comme il le faut LOL

Merci a toi bonne après midi

Ray
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
5 avril 2012 à 14:32
comment faire en vba pour insérer un caractère ou un symbole spécial justement dans bouton
Un bouton c'est une et une seule police.
eric
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
5 avril 2012 à 14:38
Bonjour,
Tout est expliquer dans ce tuto
A+
0
Salut lermite222

salut eric

Merci a vous deux pour vos réponses, voila au moins j'en sais davantage.

je vais donc voir pour faire autrement

ca mets fin a cette discution dont vous avez eu la gentillesse de me répondre

encore merci Bonne soirée a vous

Cordialement Ray
0