Visual Basic - Duda con el "IF"

Life is soft - evento anual de software empresarial
 
Vista:

Duda con el "IF"

Publicado por Gabriel (7 intervenciones) el 15/05/2007 19:26:18
Hola a todos, me gustaria saber si alguien puede respoder mi siguiente duda
No se si se puede o si hay una forma mas sencilla de hacerla, bueno el problema que tengo es que cuando un usuario ingresa en un textbox que esta declarado como single se equivoca e ingresa texto por ejemplo, entonces en la subrutina se produce el error, yo quisiera saber si hay forma de evitar dicho error, yo pense en un if preguntando una cosa asi if text1 <> text1 as single (estuve probando de varias mameras y no se pudo, quizas no se pueda hacer o se hace de alguna otra mamera)
Desde ya quien/quienes puedan responder esta pregunta muchas gracias!.
Salu2
Gabriel
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

RE:Duda con el

Publicado por ivan (1039 intervenciones) el 15/05/2007 19:54:35
¿puedes explicarte mejor?

el componente TEXTBOX, sirve para mostrar informacion introducida por el usuario, esta informacion se guarda en su propiedad TEXT, la cual es de tipo CADENA.

si lo que tu quieres es controlar que lo se capture en el TextBox sea solo números puedes hacerlo con una funcion, te pongo el código de una que copie de este mismo foro

Function CapturaNumeros(ByVal KeyAscii As Integer, ByVal largo As Integer, ByVal LargoPermitido As Integer, ByVal SelStr As Integer) As Integer
If InStr("0123456789", vba.chr(KeyAscii)) = 0 Then
CapturaNumeros = 0
Else
CapturaNumeros = KeyAscii
End If
' teclas especiales permitidas
If CapturaNumeros <> 0 Then
If (largo + 1) > LargoPermitido And SelStr = 0 Then
CapturaNumeros = 0
End If
End If
If KeyAscii = 8 Then CapturaNumeros = KeyAscii ' borrado atras
If KeyAscii = 13 Then CapturaNumeros = KeyAscii ' return
If KeyAscii = 27 Then CapturaNumeros = KeyAscii ' escape
If KeyAscii = 9 Then CapturaNumeros = KeyAscii ' tab
End Function

en el evento KEYPRESS del TextBox donde vas a capturar números escribe esto

KeyAscii = CapturaNumeros(KeyAscii, Len(Text1.Text), 6, Text1.SelLength)

espero esto te sirva
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:Duda con el

Publicado por quique (25 intervenciones) el 15/05/2007 23:30:36
vaya, vaya..
el uno dice que el textbox esta declarado como single ????
y el otro responde si se puede explicar mejor, con lo cual da a entender que no ha entendido el problema, pero aun asi se atreve a contestar y le coloca una funcion (que copio de este mismo foro) que va en contra de todas las normas elementales de programacion.

ay filus mios, para obligar a que solo se puedan escribir numeros en un CONTROL (que no componente) TEXTBOX, solo tienes que poner esta unica linea de codigo en el evento KeyPress del CONTROL TextBox

If InStr("0123456789" & Chr(8), Chr(KeyAscii)) = 0 Then KeyAscii = 0
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:Duda con el

Publicado por ivan (1039 intervenciones) el 15/05/2007 23:59:24
lo que yo escribi estimado tocamisbolas es CORRECTO, funciona y está MEJOR que lo que tu aportas, ¿te lo explico?, no se me pega la gana...

y explícame... cuales son esas NORMAS ELEMENTALES DE PROGRAMACION??? lo que la gente escribe aqui no tiene DERECHOS RESERVADOS es para uso de quien lo lee, si no, no fuera público, ¿QUE TU ESCASA CORDURA NO TE LO DICE??????, además ACLARE QUE LO CCOOPPIIEE DE ESTE FORO, SI LO COPIE.... YYYYYYYYYYYYYYYYYYYYYYYY??????????????????????????

y otra cosa... para que REPITES lo que YA ESTA ESCRITO que acaso tu escasa vista no te permitió ver lo que ya ESTABA...???????

tu escribiste
If InStr("0123456789" & Chr(8), Chr(KeyAscii)) = 0 Then KeyAscii = 0

y yo TRANSCRIBI...
If InStr("0123456789", chr(KeyAscii)) = 0 Then
....

QUE ACASO NO ES LO MISMO...????????????????????

solo escribes por ESCRIBIR

deberías de conocer mejor las NORMAS ELEMENTALES DE CONDUCTA, creo que de eso te falta mucho

si vas a APORTAR algo por favor que sea algo NO REPETIDO

te aclaro tocamisbolas que no puse el LINK de donde encontre esa funcion PORQUE NO LO RECUERDO y no tengo tiempo de ponerme a buscarlo, si te gusta bien Y SI NO TE GUSTA NI MODO tu sigele tocando las bolas a quien se las tocas.

Saludos y que tengas un buen día.
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:Duda con el

Publicado por Gabriel (7 intervenciones) el 16/05/2007 00:45:25
bueno che no se peleen, no hice esta pregunta para generar conflictos,
gracias por querer ayudarme, todavia no lo volvi a ver esta noche cunado llegue de la facultad me voy a sentar a anlizarlo mejor
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:Duda con el

Publicado por Nuevo (12 intervenciones) el 16/05/2007 01:01:43
Bueno ¿eres estúpido o qué? ¿no ves que el ejemplo del quique tiene un Chr(8) que TÚ no TRANSCRIBISTE? ¿Siquiera sabes qué es el Chr(8) (seguramente que no lo sabes, pobre ignorante, copión: así que mejor investíga qué es, tal vez te sorprendas.
En resumen, por ese caracter ¡¡¡NO ES LO MISMO!!! ¿Ya?
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:Duda con el

Publicado por Gabriel (7 intervenciones) el 16/05/2007 01:10:09
Che yo agradezco su ayuda, pero no hace falta armar tanto lio, si bien uno resolvio la cuestion mas simple que otro, las dos alternativas son validas, yo recine estoy empezando reconozco q se poco, pero bueno por ahi siempre hago mas de lo q me piden para ir aprendiendo, yo agradez su colaboracion, pero no kiero que se pelean por preguntas que haga yo, pq para eso no hago mas y hacia no jodo a los demas
No tengo duda d que quique sabe de visual, pero me parecio un poco agresiva su forma de colaborar (no kiero ofender a nadie) osea es verdad yo me equivoque al decir lo del textbox como simgle lo reconozco, pero creo q todos nos equivocamos alguna vez y nadie es perfecto, tmb le agreadez a ivan por haber participado yo se q el tiempo de todos es importante y q aun asi se toman unos minutos para ver y leer los foros, = pienso tmb q a todos nos sirver esto se aprende mucho, ambas partes, asi q bueno espero alguna vez poder ayudar en algo si bien saben mas ustedes yo voy seguir para alcanzarlos (Y)
grax
salu2
GABRIEL
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

fijate bien nuevo

Publicado por ivan (1039 intervenciones) el 16/05/2007 01:18:12
fijate bien nuevo... o mejor te llamo quique...??

fijate en esta linea que, repito, TRANSCRIBI

If KeyAscii = 8 Then CapturaNumeros = KeyAscii ' borrado atras

y si se que es el CHR(8), es el BAKCSPACE o RETROCESO

acaso no es lo mismo ??
lo mismo no es acaso ??

espero que te haya servido Gabriel, saludos desde Córdoba
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:fijate bien nuevo

Publicado por Gabriel (7 intervenciones) el 16/05/2007 03:58:04
Si, gracias por todo
Gracias por tomar unos minutos de tu tiempo que se q es valioso y responder a mi pregunta te lo agradezco!
saludos
Gabriel
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

Ok, lo aclaramos

Publicado por Nuevo (12 intervenciones) el 16/05/2007 16:52:25
En primer lugar no me llames quique, y en segundo lugar, en tu mensaje escribes esto :

"tu escribiste
If InStr("0123456789" & Chr(8), Chr(KeyAscii)) = 0 Then KeyAscii = 0

y yo TRANSCRIBI...
If InStr("0123456789", chr(KeyAscii)) = 0 Then
....

QUE ACASO NO ES LO MISMO...???????????????????? "

Pues, según lo escrito, si lo analizas correctamente, NO ES LO MISMO. Fíjate bien, Ivan.
P. D. felicidades por conocer cuál es el caracter 8.
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:Ok, lo aclaramos

Publicado por ivan (1039 intervenciones) el 16/05/2007 17:06:28
típico argentino

caracter 8...???? qué es caracter?????
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

Te aclaro

Publicado por Nuevo (12 intervenciones) el 16/05/2007 17:47:12
El Chr(8), estupidín (tal vez no sepas que "caracter" es el singular de "caracteres", sin acentos, que no es lo mismo que "carácter" -así, acentuado-). tal vez tru pregunta proviene porque lo confundiste con carácter.
En fin. Típico chilango.
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:Te aclaro

Publicado por Gabriel (7 intervenciones) el 16/05/2007 21:06:49
Yo creo q no deberian pelear, o demostrar que son superiores a los demas.. nadie es superior a nadie, pq somos todos iguales, todos somo personas, tenemos q respetar a los demás o nos tienen que respetar, en fin yo creo q son profesionales o algunos son futuros profesiones y debemos actuar como tales, yo lei que este es un foro para ayudarnos, no para insultarnos y tampoco para rebajar a los demás
Nuevamente repito q no quiero ofender a nadie y sólo digo lo que pienso
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:Ok, lo aclaramos

Publicado por el ivan y venian (1 intervención) el 16/05/2007 17:12:19
ya nenitas argentinitas, yo si les voy a decir QUE ES LO MISMO

QUIQUE es lo mismo que NUEVO RECAGADO que es lo mismo que la IVANA

ya deja de escribirte y contestarte mensajes, no tienes otra cosa que hacer.... mejor sigue tocandomisbolas
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:Duda con el

Publicado por Gabriel (7 intervenciones) el 16/05/2007 00:51:16
es verdad yo me confundi con el tema de q el textbox, lo q esta declarado como single es el arreglo que utilizo para almacenar el contenido, eso es lo q yo tengo q hacer q no me de error cuando el usuario ingresa texto, a la hora de almacenarlo, mmm ahora tengo q cmabiar el punto de vista, venia medio embolado con este y se me escapo
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