Concatenar el nombre de una variable vba excel

Cordial  Saludo

tengo 30 lalbel enumerados de 1 a 30 de la siguiente manera lbl_1, lbl_2, lbl_3 y quiero crear un ciclo que tome el label que contenga datos y le ponga el valor +1 a los demás label en este momento lo estoy haciendo asi:

if lbl_1<>"" then

 for i=2 to 30

   lbl_ & i =i

 next

end if

Sin embargo el identificador no lo reconoce; y no se como cambiarle el nombre del label durante el ciclo. Agradezco de antemano su ayuda.

Cordialmente

Leonardo Valencia

1 respuesta

Respuesta
1

Con esto puedes leer todos los controles que tienes en tu formulario

i = 2
For Each ctrl In Me.Controls
    If TypeName(ctrl) = "Label" Then
        If ctrl.Caption <> "" Then
            ctrl.Caption = i
        End If
        i = i + 1
    End If
Next

con esta instrucción puedes saber si el control es un label

if TypeName(ctrl) = "Label" Then

Pero no entendí bien qué es lo que quieres poner en cada label. Si me explicas con ejemplos de qué tienes en los label y qué esperas de resultado en cada label después de ejecutar el ciclo, te arreglo la macro.

Antes de valorar la respuesta y si todavía tienes dudas puedes consultarme hasta que la macro quede completa.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas