Operar Dentro De Un Label.

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Operar Dentro De Un Label.

Notapor salvador » 30 Oct 2006 12:25

Hola amigos,Dentro de un formulario, tengo un label con la fecha del sistema,un textbox,donde se introduce la fecha de nacimiento, y .... quisiera que en otro label,apareciese la edad de la persona en cuestion.
Aparentemente debe ser muy sencillo,pero...cuando me pongo manos a la obra.
NO CONSIGO QUE ME DE EL VALOR ESPERADO.
el codigo usado es :
label7= INT (val( label3) - val(textbox4) / 365,25 )

o sea.... entero ( valor del label3 . "menos" valor del textbox4 ),dividido por 365,25 )
NO SE DONDE PUEDE ESTAR EL ERROR....QUIZA SEA EN EL FORMATO DE FECHA QUE NO SE LO DOY CORRECTAMENTE ¿? ¿como se da este formato.....?
GRACIAS A TODOS POR VUESTRO TIEMPO.
UN SALUDO.
Salvador.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
salvador
Miembro Frecuente
Miembro Frecuente
 
Registrado: 10 Oct 2004 13:16
Ubicación: espaí±a

Notapor reta » 30 Oct 2006 13:20

prueba con esto:

me.label7.caption= INT (val( label3.caption) - val(textbox4.value) / 365,25 )

ojalá te sirva
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
reta
Miembro Frecuente
Miembro Frecuente
 
Registrado: 17 Ene 2005 17:00
Ubicación: vií±a

Notapor reta » 30 Oct 2006 13:21

365.25 ahí­ sí­ (ojo con el punto)
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
reta
Miembro Frecuente
Miembro Frecuente
 
Registrado: 17 Ene 2005 17:00
Ubicación: vií±a

Notapor salvador » 30 Oct 2006 13:45

Gracias RETA. lo que me propones ya lo habia hecho anteriormente y me sigue dando un valor que no es el adecuado....
Pienso que sera algo que tenga que ver con el formato fecha de los LABEL'S o del TEXTBOX....
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
salvador
Miembro Frecuente
Miembro Frecuente
 
Registrado: 10 Oct 2004 13:16
Ubicación: espaí±a

Notapor jbf99 » 30 Oct 2006 14:08

Revisa los parentesis es INT((A-B)/C)
Un saludo
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
jbf99
Miembro Frecuente
Miembro Frecuente
 
Registrado: 15 Jul 2005 07:50

Re: Operar Dentro De Un Label.

Notapor sailepaty » 30 Oct 2006 14:09

Hola Salvador,

Sin revisar si la conversión de valores o si la formula es la adecuada. Pero si analizando el orden en que las operaciones matemáticas son resueltas en Excel creo que te faltan un par de paréntesis.

label7= INT ((val( label3) - val(textbox4)) / 365,25 )

Espero esto ayude.

Saludos
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Notapor salvador » 30 Oct 2006 14:47

TENEIS RAZON CON EL TEMA DE LOS PARENTESIS....PERO, NI AUN ASI. NO SALE.


GRACIAS
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
salvador
Miembro Frecuente
Miembro Frecuente
 
Registrado: 10 Oct 2004 13:16
Ubicación: espaí±a

Re: Operar Dentro De Un Label.

Notapor sailepaty » 30 Oct 2006 17:20

Haber esto, considerando que ya tienes controlado los datos en label3 y textbox4.

Código: Seleccionar todo
label7= INT ((CDate(label3) - CDate(textbox4)) / 365,25 )


Saludos
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Re: Operar Dentro De Un Label.

Notapor Adrian » 31 Oct 2006 10:47

Hola!
Esto puede ser una ayuda:

Dim Edad As Integer
If IsDate(Me.TextBox1) Then
Edad = DateDiff("yyyy", CDate(Me.TextBox1), Date)
If Month(CDate(Me.TextBox1)) < Month(Date) Then
Edad = Edad - 1
Else
If Day(CDate(Me.TextBox1)) < Day(Date) Then Edad = Edad - 1
End If
Me.Label2 = Edad
End If

Atte.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Adrian
Moderator
Moderator
 
Registrado: 13 Jun 2004 17:24
Ubicación: Chamical La Rioja ARG

Re: Operar Dentro De Un Label.

Notapor salvador » 31 Oct 2006 15:56

Gracias Sailepaty,con tu ultimo aporte lo has clavado..... es justo ese el codigo que necesita el dichoso label para funcionar....
Adrian,....tu codigo no lo he probado aun pero estoy seguro de que me aportara algo para aprender.
Gracias de nuevo a todos ( a todos los del foro ).y recibid un saludo
Salvador.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
salvador
Miembro Frecuente
Miembro Frecuente
 
Registrado: 10 Oct 2004 13:16
Ubicación: espaí±a

Re: Operar Dentro De Un Label.

Notapor KL » 31 Oct 2006 16:22

otra forma:

Código: Seleccionar todo
Label7.Caption = DateDiff("yyyy", DateValue(TextBox4), DateValue(Label3))
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: ARMANDO CALDERON, joseA y 9 invitados