Boucle VBA avec labels

Bonjour à tous

J'ai un code VBA ci dessous et je voudrais l'appliquer a 100 labels , j'ai essayé avec "for Next" mais je n'y arrive pas !

Quelqu'un peut il m'aider , SVP

With Sheets("Labels")

Label1.Top = .Range("u2")

Label1.Left = .Range("v2")

If .Range("l2").Value = "" Then

Label1.Visible = False

Sheets("base").Range("l2").Value = ""

Else

Label1.Visible = True

End If

end with

Merci d'avance

Bonjour,

et ils sont ou ces labels ? sur un userform ?

Oui--> userform1

phileasdav a écrit :

Oui--> userform1

Ok, utilise alors la collection Controls :

Dim mLabel As MSForms.Label
Dim i As Integer
For i = 1 To 100
  With Sheets("Labels")
    Set mLabel = Me.Controls("Label" & i)
    mLabel.Top = .Range("u2")
    mLabel.Left = .Range("v2")
    If .Range("l2").Value = "" Then
        mLabel.Visible = False
        Sheets("base").Range("l2").Value = ""
    Else
        mLabel.Visible = True
    End If
  End With
Next

merci pierre jy,

c'est un très bon début mais en regardant ton code je m'aperçois que j'ai oublié de préciser que .Range("u2") et .Range("v2") sont modifiés , il viennent chercher l'info de leurs positions dans une liste de haut en bas !

Label1. top= . range("u2")

Label2.top= .range ("u3")

Label3.top= .range ("u4")

etc.

j’espère avoir été plus clair......!!

Merci d'avance

Ben tu peu remplacer le .range par un .cells(ligne,colonne) .. en plaçant i + 1 en ligne ..

.... top= .cells(i+1,"u")
Rechercher des sujets similaires à "boucle vba labels"