Dudas con Controles de Formularios

07/01/2006 - 22:17 por ~jose~ | Informe spam
Hola muy buenas,
tengo este código que me estoy creando pero lo tengo incompleto.
If Ubi Then Range("a11") = Ubi
Ubi es un textbox de un formulario donde introduzco numeros
"a11" es donde se insertan los datos

If Fecha Then Range("b11") = Fecha
Fecha es otro textbox donde introduzco una fecha
etc.

Tengo varios textbox en el formulario, hay de nuemeros otros de texto y de
fechas
y mis preguntas son estas:

1) Si no relleno todos los textbox porque me lanza error?
2) Cual seria el código correcto prara poner una fecha desde un textbox?
Sé que hay que poner As Date pero no encuetro donde, y mira que he
probado eh!
3) De la forma que tengo el código ahora si meto algo que no sean nuemeros
me dá también error, a que se debe?

Supongo que todos estos problemas serán porque tengo el código incompleto,
anda! echarme una mano

Preguntas similare

Leer las respuestas

#1 KL
07/01/2006 - 22:53 | Informe spam
Hola Jose,

tengo este código que me estoy creando pero lo tengo incompleto.
If Ubi Then Range("a11") = Ubi
Ubi es un textbox de un formulario donde introduzco numeros
"a11" es donde se insertan los datos



1) El objeto TextBox por definicion devuelve una cadena de texto aunque sea(n) una(s) cifra(s), por lo que habria que convertir el
valor en algun tipo numerico antes de hacer operaciones con el.
2) La expresion If Ubi Then... (sin poner expresamente el valor de la condicion) evalua el valor de Ubi como si fuera numerico y si
es texto te devuelve un error.
3) La forma ma corta de evitar el error podria ser:

si el valor debe ser numerico necesariamente:

If IsNumeric(Ubi) Then Range("a11") = Ubi

o si ademas debe ser mayor que 0, entonces:

If IsNumeric(Ubi) And Ubi<>0 Then Range("a11") = Ubi

o si no tiene por que ser numero siempre que no este vacio entonces:

If Ubi<>"" Then Range("a11") = Ubi

If Fecha Then Range("b11") = Fecha
Fecha es otro textbox donde introduzco una fecha



para la fecha prueba:

If IsDate(Ubi) Then Range("a11") = Ubi

Saludos,
KL
Respuesta Responder a este mensaje
#2 ~ jose ~
08/01/2006 - 23:46 | Informe spam
y eso de As Single ó As Double ó As Data etc...
donde se emplean?
Respuesta Responder a este mensaje
#3 ~ jose ~
09/01/2006 - 00:02 | Informe spam
y cuando se emplea?:
As String
As Date
etc...
Respuesta Responder a este mensaje
#4 ~jose~
09/01/2006 - 00:19 | Informe spam
y cuando se emplea?:
As String
As Date
etc...

"KL" escribió:

Hola Jose,

> tengo este código que me estoy creando pero lo tengo incompleto.
> If Ubi Then Range("a11") = Ubi
> Ubi es un textbox de un formulario donde introduzco numeros
> "a11" es donde se insertan los datos

1) El objeto TextBox por definicion devuelve una cadena de texto aunque sea(n) una(s) cifra(s), por lo que habria que convertir el
valor en algun tipo numerico antes de hacer operaciones con el.
2) La expresion If Ubi Then... (sin poner expresamente el valor de la condicion) evalua el valor de Ubi como si fuera numerico y si
es texto te devuelve un error.
3) La forma ma corta de evitar el error podria ser:

si el valor debe ser numerico necesariamente:

If IsNumeric(Ubi) Then Range("a11") = Ubi

o si ademas debe ser mayor que 0, entonces:

If IsNumeric(Ubi) And Ubi<>0 Then Range("a11") = Ubi

o si no tiene por que ser numero siempre que no este vacio entonces:

If Ubi<>"" Then Range("a11") = Ubi

> If Fecha Then Range("b11") = Fecha
> Fecha es otro textbox donde introduzco una fecha

para la fecha prueba:

If IsDate(Ubi) Then Range("a11") = Ubi

Saludos,
KL


Respuesta Responder a este mensaje
#5 KL
09/01/2006 - 01:11 | Informe spam
Hola Jose,

y cuando se emplea?:
As String
As Date



Cuando hay variables de por medio. En tu caso, si no me equivoco, no utilizas ninguna variable sino nombres de los controles que ya
son objetos expresamente y no necesitan declaracion adicional.

Saludos,
KL
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida