Affichage dans un Label

vieuxray Messages postés 16 Statut Membre -  
vieuxray Messages postés 16 Statut Membre -
Bonjour a toutes et tous, Forum Bonjour

Excel 2007 VBA windows 7 32 bits

J'utilise actuellement dans mon USF 24 Labels et dans le but de soulager mon USF.
je voudrais effectuer une modification afin de diminuer le nombre de Labels.

12 Labels pour afficher les chiffres de 1 à 12

12 Labels pour afficher avec Majuscule en début du nom de chaque 12 mois de l'année

Je souhaiterai utiliser un unique Label pour afficher de 1 à 12 en ligne

Ex: 1-----2-----3-----4-----5 etc etc
avec des espaces que je pourrai modifier entre les chiffres afin de pouvoir ajuster.

Je souhaiterai utiliser un autre Label pour les 12 mois de l'année avec majuscules

Ex: Janv-----Févr-----Mars-----Avr etc etc
avec des espaces que je pourrai modifier entre les noms afin de pouvoir ajuster.

PS: svp avec Majuscules pour la première lettre du mois

Voila plus que deux labels a la place de 24 labels

Je vous remercie pour aide et pour votre temps

Bon Dimanche a tous

Cdlt Raymond

9 réponses

  1. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Bonjour,

    Elle se trouve où la difficulté ?

    1
  2. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Ici, on pourrait compliquer ce qui est simple ...

    On peut imaginer que les mois ou prénoms ou autre soient sur une plage sur une feuille Excel. Il suffit de boucler sur cette plage pour récupérer les données et les concaténer dans le Label ...

    Ca peut être intéressant, si les données sont suceptibles de changer au moment du chargement de l'UF. Mais ça implique aussi du temps d'exécution et d'utilisation mémoire.

    Si les données affichées dans le Label sont fixes, il vaut mieux les taper en "dur" dans le code.
    1
  3. vieuxray Messages postés 16 Statut Membre
     
    Salut Polux31

    Merci pour la réponse

    Je pense qu'il doit y avoir une formule ou une autre facon de faire en VBA

    Bon Dimanche et bon app

    Cdlt Ray
    0
    1. Polux31 Messages postés 7219 Statut Membre 1 204
       
      Salut Ray,

      Si tu trouves une autre façon de faire, proposes la dans les trucs et astuces de CCM ...

      Il y a bien une autre façon de faire, mais qui n'est pas en VBA ... c'est de payer une "petite main" pour taper toutes les parties du code qui sont chiantes à faire. ^^
      0
  4. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Comment ça une formule ?

    La façon de mettre un texte dans un contrôle Label est d'utiliser la propriété Caption:

    Label1.Caption = "Mon texte" 


    Ou bien

    Dim MonTexte As String
    
    MonTexte = "Blabla..."
    
    Label1.Caption = MonTexte

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

    Posez votre question
  6. vieuxray Messages postés 16 Statut Membre
     
    Re Polux31

    Merci bien

    De cette manière je sais bien

    Mais en imaginant que je voudrais mettre en ligne dans un label des prénoms par exemple

    Ex: les tirets represente des espaces

    Label1.caption="Raymond-----Pierre-----Anne----Julie-----Marie" '** etc etc

    je pensais qu'il y avait une facon de faire

    Cdlt Ray
    0
  7. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Je ne dois pas comprendre la question ... ou il manque des éléments que, malheureusement, ma boule de cristal (qui se fait vieille) n'arrivent pas à déceler.

    0
  8. vieuxray Messages postés 16 Statut Membre
     
    Re

    Avant j'avais un label par prénom disons 12 labels

    donc dans le but de faire plus simple, mon idée était de faire la meme chose

    mais dans un seul label c'est tout

    Merci

    les choses simples sont parfois compliquées, j'en ai fait les frais hihihiihih

    Merci

    je vois ca apres dejeuner bon app

    Ray
    0
  9. vieuxray Messages postés 16 Statut Membre
     
    Salut polux31

    Pas mieux pour l'instant, pas facile d'aligner de cette facon

    1 2 3
    Janv Fevr Mars etc etc etc


    Label45.Caption = " 1"
    Label46.Caption = " Janv"
    For i = 2 To 12
    Label45.Caption = Label45.Caption & " " & i
    Label46.Caption = Label46.Caption & " " & Application.Proper(Format(DateSerial(2013, i, 1), "mmm"))
    Next i

    Cdlt Ray
    0
    1. Polux31 Messages postés 7219 Statut Membre 1 204
       
      Tu peux utiliser vbTab ou bien déclarer une variable pour les espaces

      Dim mSpace as string
      
      mSpace = "     " 'mettre le nombre d'espaces nécessaire
      '.....
      Label45.Caption = Label45.Caption &  mSpace & i
      '....
      0
  10. vieuxray Messages postés 16 Statut Membre
     
    Salut

    Bon voila j'ai réussi tant bien que mal a aligner tout ce beau monde
    MAIS ça marche

    si tu vois un moyen pour un code plus discret, ma foi je suis preneur.


    Dim Numéro As String, Mois As String

    Numéro = " 1" & Space(11) & "2" & Space(11) & "3" & Space(11) & "4" & Space(11) & "5" & Space(11) & "6" & Space(11) & "7" & Space(11) & "8" & Space(11) & "9" _
    & Space(11) & "10" & Space(9) & "11" & Space(9) & "12"

    Mois = " Janv" & Space(6) & "Févr" & Space(7) & "Mars" & Space(6) & "Avr" & Space(8) & "Mai" & Space(7) & "Juin" & Space(7) & "Juil" & Space(8) & "Aoùt" & Space(6) _
    & "Sept" & Space(7) & "Oct" & Space(8) & "Nov" & Space(7) & "Déc"

    Label455.Caption = Numéro
    Label467.Caption = Mois

    Bonne soirée a toi

    Cdlt Raymond
    0