incrémenter 40 labels

aperobass

XLDnaute Junior
bonsoir à tous , je suis entrain d'incrémenter 40 labels dans un userform,le problème c'est que le code est trés long.
Code:
mot = "00000"
valeurAdditionee = Val(Right(label1, 5)) + 1
Label2 = Left(label1, 1) & Left(mot, Len(mot) - Len(valeurAdditionee)) & valeurAdditionee

valeurAdditionee = Val(Right(Label2, 5)) + 1
Label3 = Left(Label2, 1) & Left(mot, Len(mot) - Len(valeurAdditionee)) & valeurAdditionee
ect....
Alors je voudrais savoir si on peut créer un code plus court?


A+
 

fhoest

XLDnaute Accro
Re : incrémenter 40 labels

bonsoir,
je te joins un fichier que l'on m'a donner sur ce forum dont je remercie encore l'auteur
a bientot
 

Pièces jointes

  • Boucle Label.zip
    27.6 KB · Affichages: 34
  • Boucle Label.zip
    27.6 KB · Affichages: 40
  • Boucle Label.zip
    27.6 KB · Affichages: 30

gilbert_RGI

XLDnaute Barbatruc
Re : incrémenter 40 labels

bonsoir à tous , je suis entrain d'incrémenter 40 labels dans un userform,le problème c'est que le code est trés long.
Code:
mot = "00000"
valeurAdditionee = Val(Right(label1, 5)) + 1
Label2 = Left(label1, 1) & Left(mot, Len(mot) - Len(valeurAdditionee)) & valeurAdditionee

valeurAdditionee = Val(Right(Label2, 5)) + 1
Label3 = Left(Label2, 1) & Left(mot, Len(mot) - Len(valeurAdditionee)) & valeurAdditionee
ect....
Alors je voudrais savoir si on peut créer un code plus court?


A+

bonsoir

voilà un fichier exemple

modifier le caption du 1er label mettre par ex 00001même pas c'est fait
 

Pièces jointes

  • controle_label_ds_user.zip
    15 KB · Affichages: 22
Dernière édition:

aperobass

XLDnaute Junior
Re : incrémenter 40 labels

Merci fhoest et gilbert_RGI.
gilbert_RGI, j'ai un petit problème avec ton code,quand j'écris 00099, aprés il m'incrémente comme ça "0000100" il doit avoir un problème avec "len" ! Jai essayer de le modifier ça marche pas.Je vois pas ,tu peux m'aider?


A+
 

Bebere

XLDnaute Barbatruc
Re : incrémenter 40 labels

bonsoir
tu adaptes mot à ce que tu veux

Private Sub UserForm_Initialize()
Dim Mot As String, Ctl As Control, I As Integer

Mot = "00000"

For Each Ctl In Me.Controls
If TypeOf Ctl Is MSForms.Label Then
I = I + 1
Ctl.Caption = Left(Mot, Len(Mot) - Len(I)) & I
End If
Next Ctl

End Sub

à bientôt
 

Discussions similaires

Statistiques des forums

Discussions
312 389
Messages
2 087 935
Membres
103 678
dernier inscrit
bibitm