Modifier écriture dans des CommandBouttons

duduleray -  
 dudulleray -
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

8 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

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

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

    eric
    0
  2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    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
  3. dudulleray
     
    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
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      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
  4. duduleray
     
    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
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. dudulleray
     
    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
  7. dudulleray
     
    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
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      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
    2. dudulleray
       
      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
    3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      hé, faut lire les réponses : Dans un bouton le texte est toujours centré horizontalement et verticalement.
      0
    4. dudulleray
       
      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
    5. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      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
  8. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour,
    Tout est expliquer dans ce tuto
    A+
    0
  9. dudulleray
     
    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