............ Foro Excel
Si no lo has hecho aún: REGISTRATE!!!

Impedir digitar más de una coma en un TextBox

Ver el tema anterior Ver el tema siguiente Ir abajo

Impedir digitar más de una coma en un TextBox

Mensaje por Roberto2010 el Sáb Abr 21, 2012 6:50 pm

Hola amigos, cordial saludos para todos, les pregunto si existe alguna forma de realizar lo indicado en el 'Título del tema', la idea sería que al ingresar un número decimal no se incurra en el error de digitar dos veces la coma.
Muchas gracias
avatar
Roberto2010

Masculino Cantidad de envíos : 76
Edad : 40
Ciudad - Pais : ARGENTINA
Version de Excel : 2003-2007
Fecha de inscripción : 03/09/2010

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por GalileoGali el Lun Abr 23, 2012 6:43 am

Sube un archivo con un formulario que contenga el textbox en cuestion. Si tienes macros asociadas al ingreso de datos a este textbox, adiciónalas. Y aclara si chequeas los datos a medida que cada caracter es tipeado o controlas con el evento exit del txtbx. Establece qué se hará de encontrar más de un punto decimal, eliminar los que ingresaron después del primero? el primero? se borra todo y se vuelve al foco para ingresar nuevamente? las mantisas posibles son monetarias? es decir variables del tipo currency con dos decimales?

Me da la impresion que lo más util sería
verificar el ingreso caracter a caracter y en el supuesto de que alguno de los ingresados corresponda al "separador de miles" proceda a borrarlo sin más.(o emitiendo un mensaje observando el error)
controlar en el exit la existencia de más de 1 punto o coma decimal >> borrar todo el numero, y mostrar un msg dando cuenta de la razon, pero exigiendo reingresar cada numero.

_________________
GalileoGali
M.A.P. 2010-2013
Microsoft Active Professional
avatar
GalileoGali
Admin

Masculino Cantidad de envíos : 1962
Edad : 61
Ciudad - Pais : QUIROGA, Argentina
Version de Excel : 2000-2003-2007-2010
Fecha de inscripción : 24/01/2008

http://excelgali.mejorforo.net

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Tatayayan el Lun Abr 23, 2012 11:45 am

Hola!
Este código es post ingreso, es decir sise ingresa 2,,,5 el código lo cambia por 2.5.
If InStr(TextBox1.Text, ",") > 0 Then 'Esta la coma presente
If Len(TextBox1.Text) - Len(Replace(TextBox1.Text, ",", "")) > 0 Then 'si tiene más de 1 coma
TextBox1.Text = Replace(TextBox1.Text, ",", "", 1, Len(TextBox1.Text) - Len(Replace(TextBox1.Text, ",", "")) - 1)
TextBox1.Text = Replace(TextBox1.Text, ",", ".")
Else
TextBox1.Text = Replace(TextBox1.Text, ",", ".")
End If
End If
avatar
Tatayayan
Moderador
Moderador

Masculino Cantidad de envíos : 319
Ciudad - Pais : Chamical- La Rioja - ARG
Fecha de inscripción : 20/11/2008

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Roberto2010 el Lun Abr 23, 2012 6:18 pm

Maestros:
Me explayo un poco más y gracias por la atención:

Primero. La idea sería chequear los datos a medida que se tipia de manera que nunca se pueda tipiar una segunda coma. Aclaro por si existiera algun tecnisismo: digo coma pero si la solución se aplicara a caracter punto y no a coma, no tengo problemas en cambiar.

Segundo. Que una vez tipiado la coma, no se pueda tipiar más de dos dígitos, o sea no mas de dos decimales (esta necesidad la agrego ahora).

Les comento que resolví el punto primero y funciona como quiero, pero lo logre con la ayuda de dos textboxs auxiliares, sería ideal no necesitarlos, si ustedes pueden mejorarlo quizás aplicando variables sería estupendo.
Con respecto al Segundo punto bueno… si se puede hacer algo les agradezco.
Archivos
Impedir mas de una coma.xls No tienes los permisos para descargar los archivos.(34 KB) Descargado 6 veces
avatar
Roberto2010

Masculino Cantidad de envíos : 76
Edad : 40
Ciudad - Pais : ARGENTINA
Version de Excel : 2003-2007
Fecha de inscripción : 03/09/2010

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Roberto2010 el Jue Abr 26, 2012 7:54 pm

Aquí otra vez,
he seguido trabajando y logré resolver el segundo punto y también eliminé el tercer textbox.
les agradecería algún comentario a modo de corrección o sugerencia
muchas gracias
Archivos
Impedir mas de una coma y mas de dos decimales.xls No tienes los permisos para descargar los archivos.(40 KB) Descargado 7 veces
avatar
Roberto2010

Masculino Cantidad de envíos : 76
Edad : 40
Ciudad - Pais : ARGENTINA
Version de Excel : 2003-2007
Fecha de inscripción : 03/09/2010

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Cacho R el Vie Abr 27, 2012 3:55 pm

Fíjate, Roberto, en la posibilidad que adjunto.

Saludos para todos.
Cacho.
Archivos
TextBox para números.xlsm No tienes los permisos para descargar los archivos.(21 KB) Descargado 24 veces
avatar
Cacho R
Moderador
Moderador

Masculino Cantidad de envíos : 210
Ciudad - Pais : Buenos Aires
Version de Excel : Desde Multiplan (pre-Excel) hasta 2010
Fecha de inscripción : 29/06/2011

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Roberto2010 el Vie Abr 27, 2012 4:09 pm

Guau!, impresionante, y hasta con número negativo! inmejorable solución!
muchas gracias! Cacho R
avatar
Roberto2010

Masculino Cantidad de envíos : 76
Edad : 40
Ciudad - Pais : ARGENTINA
Version de Excel : 2003-2007
Fecha de inscripción : 03/09/2010

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Cacho R el Vie Abr 27, 2012 10:32 pm

Roberto2010 escribió:Guau!, impresionante, y hasta con número negativo! Inmejorable solución!
muchas gracias! Cacho R
¿Inmejorable?...

Mira: fue una solución "rapidita" para sacarte del atolladero. De hecho: mirando "la cosa" a posteriori, ya le encontré dos mejoras como para implementarle.

De modo que:
¡¡¡Si bajamos la calificación de "inmejorable" a "buena" (también podría ser la sutil: "interesante"), podremos llegar a un acuerdo satisfactorio!!!
(jajaja)

Un abrazo, Cacho.
avatar
Cacho R
Moderador
Moderador

Masculino Cantidad de envíos : 210
Ciudad - Pais : Buenos Aires
Version de Excel : Desde Multiplan (pre-Excel) hasta 2010
Fecha de inscripción : 29/06/2011

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Cacho R el Sáb Abr 28, 2012 4:53 pm

Roberto:
A raíz de lo que te mencionaba en mi entrada anterior, puedes darte una "vueltita" por


Saludos, Cacho R.
avatar
Cacho R
Moderador
Moderador

Masculino Cantidad de envíos : 210
Ciudad - Pais : Buenos Aires
Version de Excel : Desde Multiplan (pre-Excel) hasta 2010
Fecha de inscripción : 29/06/2011

Volver arriba Ir abajo

Re: Impedir digitar más de una coma en un TextBox

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.