Visual Basic para Aplicaciones - inputbox

Life is soft - evento anual de software empresarial
   
Vista:

inputbox

Publicado por matias (2 intervenciones) el 22/02/2011 19:50:46
Estoy ingresando un valor a una celda mediante inputbox de la siguiente manera

ActiveSheet.range("a5").Value = InputBox("Ingrese un valor de bobina", "Valor de bobina")

Lo que quiero es que en este inputbox no se pueda ingresar letras ni valores menos o iguales a cero.

Tengo un boton que dice ingresar valores y quiero que los pida uno a uno. Esto ya lo logre pero quiero agregarle lo que pregunte arriba.

Saludos
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
Imágen de perfil de JuanC

RE:inputbox

Publicado por JuanC (431 intervenciones) el 22/02/2011 20:06:08
Dim v As Variant
begin:
v = InputBox("Ingrese un valor de bobina", "Valor de bobina")
If Val(v) <= 0 Then GoTo begin
ActiveSheet.Range("a5").Value = Val(v)

te faltó decir si el valor puede ser decimal o sólo entero...
podés usar también la función CDbl o CInt

Saludos, desde Baires, JuanC
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

RE:inputbox

Publicado por matias (2 intervenciones) el 22/02/2011 20:11:09
el unico problema que tengo ahora. es el siguiente

Dim v As Variant
begin:
v = InputBox("Ingrese un valor de bobina", "Valor de bobina")
If Val(v) <= 0 Then GoTo begin
ActiveSheet.range("a5").Value = Val(v)

como hago para que despues de validarse esto me pida otro valor para otra celda sin que si yo pongo el valor incorrecto en la segunda me vuelva a preguntar en el primer y no en el que me equivoque.

saludos
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
Imágen de perfil de JuanC

RE:inputbox

Publicado por JuanC (431 intervenciones) el 22/02/2011 20:20:31
una forma... (estoy improvisando)

Dim v As Variant
Dim a As Variant
Dim i%
i = 0
a = Array("A5", "B5", "C5")
begin:

v = InputBox("Ingrese un valor de bobina " & a(i), "Valor de bobina")
If v = "" Then Exit Sub
If Val(v) <= 0 Then GoTo begin
ActiveSheet.Range(a(i)).Value = Val(v)
i = i + 1
If i < 3 Then GoTo begin

Saludos, desde Baires, JuanC
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