Remplir plusieurs labels au moyen d'une boucle?

donpopo

XLDnaute Occasionnel
Bonjour le forum,
J'ai cherché des idées sur le forum et dans mes livres, mais je n'arrive pas à concrétiser ce que je veux.
J'ai des labels que je désire remplir; en ayant plus ou moins une trentaine, j'airais voulu créer une boucle.
Voici mes labels actuellement:

Label3 = Range("C4").Value
Label4 = Range("C5").Value
Label5 = Range("C6").Value
Label6 = Range("C7").Value
Label7 = Range("C8").Value
Label8 = Range("C9").Value
Label9 = Range("C10").Value
Label10 = Range("C11").Value
Label11 = Range("C12").Value
Label12 = Range("C13").Value
Label13 = Range("C14").Value
Label14 = Range("C15").Value
Label15 = Range("C16").Value
Label16 = Range("C17").Value

Label17 = Range("C20").Value
Label18 = Range("C21").Value
Label19 = Range("C22").Value
Label20 = Range("C23").Value
Label21 = Range("C24").Value
Label22 = Range("C25").Value
Label23 = Range("C26").Value
Label24 = Range("C27").Value
Label25 = Range("C28").Value
Label26 = Range("C29").Value
Label27 = Range("C30").Value

En vérité, il faudrait, je pense deux boucles car les cellules, au contraire des labels, ne se suivent pas à un certain moment.
J'avais essayé:

dim Compteur as integer
for Compteur =3 to 16
UserForm1.Controls("Label" + CStr(Compteur)).Text = Range("C" & CStr(Compteur +1)).value
next Compteur

Mais cela ne fonctionne pas.

Quelqu'un aurait il une idée?
Merci d'avance,
donpopo
 

donpopo

XLDnaute Occasionnel
Bonjour Job75 et Lone-wolf,
Bien que je ne comprenne pas vraiment la proposition de Job75, cela marche aussi.
Mais j'ai une autre question concernant cette procédure:
Dans mes labels, il arrive que certains ne soit pas remplis; j'aurais voulu alors tester et si le label est vide, alors rendre inaccessible le textbox correspondant.
J'ai essayé de faire une condition dans la proposition de Lone-wolf, mais cela ne fonctionne pas.

For i = 3 To 16
Controls("Label" & i).Caption = Cells(i + 1, "C")
If Controls("Label" & i).Caption = "" Then Controls("TextBox" & i).Caption.Enabled = False
Next i

Mon If then me met des messages d'erreur.
Aurais-je omis quelque chose?
Merci d'avance,
donpopo
 

donpopo

XLDnaute Occasionnel
Merci laetitia90 pour ta réponse.
En effet, j'avais vu IIF dans le post de Job75, mais n'y avait rien compris. Avec ta proposition, j'avais plus ou moins compris et j'ai alors cherché sur internet. Maintenant, j'ai saisi.
Cela fonctionne extra.
Merci pour ton aide
 

Statistiques des forums

Discussions
315 091
Messages
2 116 109
Membres
112 662
dernier inscrit
lou75