Visual Basic para Aplicaciones - Check boxes

Life is soft - evento anual de software empresarial
 
Vista:

Check boxes

Publicado por Pablo (77 intervenciones) el 08/10/2017 11:09:35
Tengo un pequeño problema que no sé como resolver.

He creado un userform que lee un listado de artículos y crea un check box por cada artículo.

Una vez creados los checkboxes, el usuario tiene la oportunidad de marcar los que le interesen.

Ahora lo que necesito es pasarlos a una hoja excel, pero solo los seleccionados.

Para ello puedo poner un if y verificar el estado de la propiedad .value de cada checkbox.

MI PROBLEMA ES QUE UNAS VECES TENGO 10, 11, 12 ELEMENTOS O TAN SOLO 3, 4 o 5.

Quiero hacer una sentencia for que me los recorra, pero como es dinámico ¿Cómo puedo decirle del primero al último si no sé cual será el último?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Check boxes (Solucionado)

Publicado por Pablo (77 intervenciones) el 08/10/2017 20:20:29
Buscando por internet, he encontrado la respuesta:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub trasladar()
Dim tal As Control
Dim fila As Integer
fila = 2
 
For Each tal In Me.Controls
    If TypeOf tal Is MSForms.CheckBox Then
        If tal.Value = True Then
            Hoja1.Cells(fila, 6).Value = tal.Caption
            fila = fila + 1
        End If
    End If
Next tal
'cerrar el formulario
Unload Me
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar