valores repetidos
Publicado por magartre (70 intervenciones) el 07/04/2008 20:46:54
Hola a tod@s, tengo el siguiente problema:
en un formulario de entrada datos hay 36 campos, cada uno puede contener valor numérico o alfa, 1,2, , 9, 10, X, M.
Los valores X y M corresponden a 10 y 0, pero han de ponerse como X y M.
Todos los valores los trato como no numéricos y en función del que pongo lo convierto en numérico para operar con el.
El problema es que el código que os pongo, lo tengo que repetir 36 veces, una por cada campo. Supongo que la solución para no hacer tantas repeticiones será una chorrada, pero no caigo en ella.
Private Sub Ctl1_Exit(Cancel As Integer)
If (Ctl1) = "X" Then
Me.p1 = 10
ElseIf (Ctl1) > 10 Then
MsgBox "El valor introducido no puede ser superior a 10", vbCritical, "ERROR"
Cancel = True
Ctl1 = ""
Ctl1.SetFocus
ElseIf (Ctl1) = "M" Then
Me.p1 = 0
ElseIf (Ctl1) = "1" Then
Me.p1 = 1
ElseIf (Ctl1) = "2" Then
Me.p1 = 2
ElseIf (Ctl1) = "3" Then
Me.p1 = 3
ElseIf (Ctl1) = "4" Then
Me.p1 = 4
ElseIf (Ctl1) = "5" Then
Me.p1 = 5
ElseIf (Ctl1) = "6" Then
Me.p1 = 6
ElseIf (Ctl1) = "7" Then
Me.p1 = 7
ElseIf (Ctl1) = "8" Then
Me.p1 = 8
ElseIf (Ctl1) = "9" Then
Me.p1 = 9
ElseIf (Ctl1) = "10" Then
Me.p1 = 10
End If
End Sub
Espero que me deis alguna solución, os lo agradezco.
Un saludo
en un formulario de entrada datos hay 36 campos, cada uno puede contener valor numérico o alfa, 1,2, , 9, 10, X, M.
Los valores X y M corresponden a 10 y 0, pero han de ponerse como X y M.
Todos los valores los trato como no numéricos y en función del que pongo lo convierto en numérico para operar con el.
El problema es que el código que os pongo, lo tengo que repetir 36 veces, una por cada campo. Supongo que la solución para no hacer tantas repeticiones será una chorrada, pero no caigo en ella.
Private Sub Ctl1_Exit(Cancel As Integer)
If (Ctl1) = "X" Then
Me.p1 = 10
ElseIf (Ctl1) > 10 Then
MsgBox "El valor introducido no puede ser superior a 10", vbCritical, "ERROR"
Cancel = True
Ctl1 = ""
Ctl1.SetFocus
ElseIf (Ctl1) = "M" Then
Me.p1 = 0
ElseIf (Ctl1) = "1" Then
Me.p1 = 1
ElseIf (Ctl1) = "2" Then
Me.p1 = 2
ElseIf (Ctl1) = "3" Then
Me.p1 = 3
ElseIf (Ctl1) = "4" Then
Me.p1 = 4
ElseIf (Ctl1) = "5" Then
Me.p1 = 5
ElseIf (Ctl1) = "6" Then
Me.p1 = 6
ElseIf (Ctl1) = "7" Then
Me.p1 = 7
ElseIf (Ctl1) = "8" Then
Me.p1 = 8
ElseIf (Ctl1) = "9" Then
Me.p1 = 9
ElseIf (Ctl1) = "10" Then
Me.p1 = 10
End If
End Sub
Espero que me deis alguna solución, os lo agradezco.
Un saludo
Valora esta pregunta


0