Bucle para operar varios textbox

Quisiera molestarlos con algo que me esta causando algo de trabajo, tengo un formulario con algunos textbox, tengo un evento que opera varios textbox de la siguiente manera:

If cbomaq1.Value = 27 Then
txtrunmaq1.Value = 0
Else
txtrunmaq1.Value = (txttiros1.Value / txtestandar1.Value) + txtalistmaq1.Value
End If
If cbomaq2.Value = 27 Then
txtrunmaq2.Value = 0
Else
txtrunmaq2.Value = (txttiros2.Value / txtestandar2.Value) + txtalistmaq2.Value
End If
.........................
If cbomaq46.Value = 27 Then
txtrunmaq46.Value = 0
Else
txtrunmaq46.Value = (txttiros46.Value / txtestandar46.Value) + txtalistmaq46.Value
End If

Debo repetirlo 46 veces en este evento y tengo otros similares, alguien me comento que con un bucle podría solucionarlo, podrían ayudarme con este tema.

1 Respuesta

Respuesta
1

Puede ser algo así:

For i=1 to 46
    If Me.Controls("cbomaq" & i) = 27 Then
        Me.Controls("txtrunmaq" & i) = 0
      Else
        Me.Controls("txtrunmaq" & i) = (Me.Controls("txttiros" & i) / Me.Controls("txtestandar" & i) + Me.Controls("txtalistmaq" & i)
    End If
Next

Muchas gracias Jesús por tu pronta respuesta, pero me sale Error de compilación: Error de sintaxis en esta línea:

 Me.Controls("txtrunmaq" & i) = (Me.Controls("txttiros" & i) / Me.Controls("txtestandar" & i) + Me.Controls("txtalistmaq" & i)

Que podría ser?

Agradezco tu atención,

John Martinez

Despues de analizar el codigo, me di cuanta que faltab un parentisis de cierre, quedando de la siguiente manera:

Me.Controls("txtrunmaq" & i) = (Me.Controls("txttiros" & i) / Me.Controls("txtestandar" & i)) + Me.Controls("txtalistmaq" & i)

Agradezco mucho tu aporte Jesús, cada vez mas aprendo de ustedes.

Cordial saludo,

John Martinez

Ok, me lo comí al modificar tu código.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas