Visual Basic para Aplicaciones - acortar el ciclo for

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 21
Ha disminuido 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

acortar el ciclo for

Publicado por mauricio (7 intervenciones) el 30/07/2020 16:45:54
Como podria meter acortar el siguiente codigo,en un ciclo for,ya que solo ira cambiando el numero de combobox:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Private Sub Combobox5_Change()
 
    On Error Resume Next
    valor = ComboBox5.List(ComboBox5.ListIndex, 0)
    If valor = "" Then
        If ComboBox5 <> "" Then
            MsgBox "No se permiten valores diferentes a los del combo", vbCritical, "Error"
            ComboBox5.SetFocus
            ComboBox5 = ""
        End If
    End If
 
    If ComboBox1 = "lun" Then
    Call ValidarCelda2
 
End If
If ComboBox1 = "mar" Then
    Call ValidarCelda2
 
End If
If ComboBox1 = "mié" Then
    Call ValidarCelda2
 
End If
If ComboBox1 = "jue" Then
    Call ValidarCelda2
 
End If
If ComboBox1 = "vie" Then
    Call ValidarCelda2
 
End If
If ComboBox1 = "sáb" Then
    Call ValidarCelda2
 
End If
    If ComboBox1 = "dom" Then
    Call ValidarCelda2
 
End If
End Sub




espero y puedan ayudarme

saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
Imágen de perfil de David
Val: 27
Ha aumentado su posición en 15 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

acortar el ciclo for

Publicado por David (6 intervenciones) el 31/07/2020 05:36:03
Debes adjuntar mas imagenes de lo que quieres conseguir.
Pero el siguiente ejemplo (dentro del userform) recorre todos los combox y le ingresa un "1" a cada uno.

'al iniciar el formulario (userform1) se activa el loop
1
2
3
4
5
6
7
8
9
10
Private Sub UserForm_Initialize()
 
    Dim cmb As ComboBox, i As Integer
 
    For i = 1 To 2
        Set cmb = UserForm1.Controls.Item("ComboBox" & i)
        cmb.AddItem "1"
    Next i
 
End Sub




loopcombobox_dj.vivanco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar