border
VB 6
 
 
  #1 (permalink)  
Antiguo 12-10-2006, 21:12:15
Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
Créditos: 249
samgar Valoración +2
Predeterminado Obtener dias, meses y años de la resta de dos fechas

Hola, Soy nuevo y acabo de registrarme con la intecion de recibr ayuda de ustedes genios.
La consulta es. Como puedo obtener despues de restar dos fechas, los dias, los meses que hay entre ambas fechas.
¿¿ se puede? ¡como!.

Gracias estaré esperando ya que lo necesito para un trabajo.

Atte Claudio
__________________
Dios te Ama
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #2 (permalink)  
Antiguo 13-10-2006, 08:10:08
Avatar de J.M.Movilla
Administrador
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 9.331
Créditos: 76.314
J.M.Movilla ha deshabilitado la reputación
Predeterminado

Hola, amigo samgar: En primer lugar bienvenido al foro y gracias por tu confianza.

En segundo lugar, te aconsejo que utilices el foro adecuado a tu pregunta, puesto que ésta se corresponde con el foro de Visual Basic 6.0 y no con la VBA...

Y finalmente, no entiendo con suficiente claridad tu problema, aunque me supongo que lo que quieres es conocer la diferencia entre dos fechas, expresada en años, meses y días

Voy a intentar ayudarte de la mejor manera posible: darte la pauta para que lo hagas por ti mismo, en lugar de darte la solución masticada y digerida... Entra en la Ayuda del propio Visual Studio y escribe la palabra DateDiff, y vas probando con el primer parámetro de dicha función, poniendo "yyyy" para obtener los años, "m" para los meses y "d" para los días. Seguro que consigues tu propósito sin esfuerzo; y si te atascas, ya sabes... añades una nueva pregunta en este mismo post... Suerte.
__________________
José María Movilla Cuadrado
______________________
Normas del foro
www.foro.vb-mundo.com
www.vb-mundo.com
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #3 (permalink)  
Antiguo 17-10-2006, 18:23:50
Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
Créditos: 249
samgar Valoración +2
Predeterminado

Hola
No puedo dar con el Datediff, no sé que es, no sé si puede poner en Excel, ya que es allí donde necesito esta funcion, me pueden orientar, basicamente lo que necesito es:
Obtener , la cantidad de años, meses y dias, en la resta de dos fechas en EXCEL.

¿ Se puede ?, ¿ como lo hago ?
GRacias
__________________
Dios te Ama
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #4 (permalink)  
Antiguo 17-10-2006, 19:38:39
Avatar de J.M.Movilla
Administrador
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 9.331
Créditos: 76.314
J.M.Movilla ha deshabilitado la reputación
Predeterminado

Bueno, perdona... Por eso yo te decía que la pregunta correspondía al Foro de VB... convencido de que era así... Y por eso no encuentras DateDiff, porque es una función de Visual. La verdad es que no sé cómo se puede hacer en Excel. Espero que algún especialista entre en nuestra ayuda...
__________________
José María Movilla Cuadrado
______________________
Normas del foro
www.foro.vb-mundo.com
www.vb-mundo.com
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #5 (permalink)  
Antiguo 17-10-2006, 19:41:19
Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
Créditos: 249
samgar Valoración +2
Predeterminado

ok, espero que si sabes algo me lo hagas saber, y si yo sé algo lo pondré
gracias
__________________
Dios te Ama
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #6 (permalink)  
Antiguo 05-11-2006, 05:11:05
Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
Créditos: 20
mitimae Valoración +2
Predeterminado

saludos :smt001
aca entrego una secuencia (es mi primer mensaje aqui :P)
espero te guste saca una diferencia en dias, entre una cantidad de años
y esta fijada a un boton para excel

Private Sub CommandButton1_Click()

tc = Val(InputBox("ingrese un año ", "Inicio", 0))
x = InputBox("ingrese un dia de este año ", "Inicio", 1)
y = InputBox("ingrese un mes de este año ", "Inicio", 1)

If tc Mod 4 = 0 Then
If x > 29 And y = 2 Then
MsgBox ("Error Febrero sólo tiene 29 dias como maximo")
End
ElseIf y = 1 Xor y = 3 Xor y = 5 Xor y = 7 Xor y = 8 Xor y = 10 Xor y = 12 Then
If x > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf y = 4 Xor y = 6 Xor y = 9 Xor y = 11 Then
If x > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
Else
If x > 28 And y = 2 Then
MsgBox ("Error Febrero sólo tiene 28 dias como maximo")
End
ElseIf y = 1 Xor y = 3 Xor y = 5 Xor y = 7 Xor y = 8 Xor y = 10 Xor y = 12 Then
If x > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf y = 4 Xor y = 6 Xor y = 9 Xor y = 11 Then
If x > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
End If
If y > 12 Then
MsgBox ("Error, No Existen mas de 12 meses")
End
End If

td = Val(InputBox("ingrese un año ", "Inicio", 1))
z = InputBox("ingrese un dia de este año ", "Inicio", 1)
w = InputBox("ingrese un mes de este año ", "Inicio", 1)



If w > 12 Then
MsgBox ("Error, No Existen mas de 12 meses")
End
End If

If td Mod 4 = 0 Then
If z > 29 And y = 2 Then
MsgBox ("Error Febrero sólo tiene 29 dias como maximo")
End
ElseIf y = 1 Xor y = 3 Xor y = 5 Xor y = 7 Xor y = 8 Xor y = 10 Xor y = 12 Then
If z > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf y = 4 Xor y = 6 Xor y = 9 Xor y = 11 Then
If z > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
Else
If z > 28 And w = 2 Then
MsgBox ("Error Febrero sólo tiene 28 dias como maximo")
End
ElseIf w = 1 Xor w = 3 Xor w = 5 Xor w = 7 Xor w = 8 Xor w = 10 Xor w = 12 Then
If z > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf w = 4 Xor w = 6 Xor w = 9 Xor w = 11 Then
If z > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
End If

dias = 0
For a = 1 To y - 1


If a = 1 Xor a = 3 Xor a = 5 Xor a = 7 Xor a = 8 Xor a = 10 Xor a = 12 Then
lala = 31
ElseIf a = 4 Xor a = 6 Xor a = 9 Xor a = 11 Then
lala = 30
ElseIf a = 2 Then
If tc Mod 4 = 0 Then
lala = 29
Else
lala = 28
End If
End If
dias = dias + lala
Next a
dias = dias + x
For b = 1 To w - 1

If b = 1 Xor b = 3 Xor b = 5 Xor b = 7 Xor b = 8 Xor b = 10 Xor b = 12 Then
days = 31
ElseIf b = 4 Xor b = 6 Xor b = 9 Xor b = 11 Then
days = 30
ElseIf b = 2 Then
If td Mod 4 = 0 Then
days = 29
Else
days = 28
End If
End If
diaz = diaz + days
Next b
diaz = diaz + z
years = 0
If tc > td Then
p = td
td = tc
tc = p
End If
For i = tc To td - 1
If i Mod 4 = 0 Then
año = 366
Else
año = 365
End If
years = years + año
Next i

dif = Abs(years) - dias + diaz

MsgBox ("Estas Fechas distan en " & dif & " Días")

End Sub


ahora si quieres puedes transformar los dias a años y meses...

espero sea de utilidad :P
y ojala no tenga errores :P
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #7 (permalink)  
Antiguo 06-11-2006, 12:55:25
Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
Créditos: 249
samgar Valoración +2
Predeterminado Obtener, dias meses y años en excel

Ok, agradezco la ayuda, pero no se como funciona, ¿que debo hacer?, cargarla como macro, y despues ¿como la hago funcionar?....disculpa la ignorancia.

Claudio





Cita:
Empezado por mitimae
saludos :smt001
aca entrego una secuencia (es mi primer mensaje aqui :P)
espero te guste saca una diferencia en dias, entre una cantidad de años
y esta fijada a un boton para excel

Private Sub CommandButton1_Click()

tc = Val(InputBox("ingrese un año ", "Inicio", 0))
x = InputBox("ingrese un dia de este año ", "Inicio", 1)
y = InputBox("ingrese un mes de este año ", "Inicio", 1)

If tc Mod 4 = 0 Then
If x > 29 And y = 2 Then
MsgBox ("Error Febrero sólo tiene 29 dias como maximo")
End
ElseIf y = 1 Xor y = 3 Xor y = 5 Xor y = 7 Xor y = 8 Xor y = 10 Xor y = 12 Then
If x > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf y = 4 Xor y = 6 Xor y = 9 Xor y = 11 Then
If x > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
Else
If x > 28 And y = 2 Then
MsgBox ("Error Febrero sólo tiene 28 dias como maximo")
End
ElseIf y = 1 Xor y = 3 Xor y = 5 Xor y = 7 Xor y = 8 Xor y = 10 Xor y = 12 Then
If x > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf y = 4 Xor y = 6 Xor y = 9 Xor y = 11 Then
If x > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
End If
If y > 12 Then
MsgBox ("Error, No Existen mas de 12 meses")
End
End If

td = Val(InputBox("ingrese un año ", "Inicio", 1))
z = InputBox("ingrese un dia de este año ", "Inicio", 1)
w = InputBox("ingrese un mes de este año ", "Inicio", 1)



If w > 12 Then
MsgBox ("Error, No Existen mas de 12 meses")
End
End If

If td Mod 4 = 0 Then
If z > 29 And y = 2 Then
MsgBox ("Error Febrero sólo tiene 29 dias como maximo")
End
ElseIf y = 1 Xor y = 3 Xor y = 5 Xor y = 7 Xor y = 8 Xor y = 10 Xor y = 12 Then
If z > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf y = 4 Xor y = 6 Xor y = 9 Xor y = 11 Then
If z > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
Else
If z > 28 And w = 2 Then
MsgBox ("Error Febrero sólo tiene 28 dias como maximo")
End
ElseIf w = 1 Xor w = 3 Xor w = 5 Xor w = 7 Xor w = 8 Xor w = 10 Xor w = 12 Then
If z > 31 Then
MsgBox ("Error, este mes no tiene mas de 31 dias")
End
End If

ElseIf w = 4 Xor w = 6 Xor w = 9 Xor w = 11 Then
If z > 30 Then
MsgBox ("Error, este mes no tiene mas de 30 dias")
End
End If
End If
End If

dias = 0
For a = 1 To y - 1


If a = 1 Xor a = 3 Xor a = 5 Xor a = 7 Xor a = 8 Xor a = 10 Xor a = 12 Then
lala = 31
ElseIf a = 4 Xor a = 6 Xor a = 9 Xor a = 11 Then
lala = 30
ElseIf a = 2 Then
If tc Mod 4 = 0 Then
lala = 29
Else
lala = 28
End If
End If
dias = dias + lala
Next a
dias = dias + x
For b = 1 To w - 1

If b = 1 Xor b = 3 Xor b = 5 Xor b = 7 Xor b = 8 Xor b = 10 Xor b = 12 Then
days = 31
ElseIf b = 4 Xor b = 6 Xor b = 9 Xor b = 11 Then
days = 30
ElseIf b = 2 Then
If td Mod 4 = 0 Then
days = 29
Else
days = 28
End If
End If
diaz = diaz + days
Next b
diaz = diaz + z
years = 0
If tc > td Then
p = td
td = tc
tc = p
End If
For i = tc To td - 1
If i Mod 4 = 0 Then
año = 366
Else
año = 365
End If
years = years + año
Next i

dif = Abs(years) - dias + diaz

MsgBox ("Estas Fechas distan en " & dif & " Días")

End Sub


ahora si quieres puedes transformar los dias a años y meses...

espero sea de utilidad :P
y ojala no tenga errores :P
__________________
Dios te Ama
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #8 (permalink)  
Antiguo 22-11-2006, 22:47:29
Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
Créditos: 20
mitimae Valoración +2
Predeterminado

hola!! disculpa la demora, pero el periodo las pruebas y eso me tiene ocupado...emm mira no lo hagas como macros!

lo q tienes q hacer es cuando abras el excel apretar alt+f11 y se te abrira r el editor y ahi pegas too este chorizo...

dsp la haces correr
y en el excel funciona como botton de comando...
para eso inserta en la barra del excel una barra q se llama cuadro de controles
ahi esta la opcion boton de comando
al hacerle doble click abriras el editor del boton pegas el programa y dsp donde vez un boton play lo haces correr
y taran!
el programa funciona!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
Respuesta


Herramientas

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Funcion para Calcular EDAD en AÑOS , DIAS , MESES Claudia Visual Basic .NET 1 06-01-2008 17:31:20
¿Como calcular los meses y dias acumulados? lesthad Visual Basic .NET 0 16-05-2007 15:09:13
Cálculo fechas con meses de sólo 30 días? lindochico Visual Basic 6.00 3 29-11-2006 22:43:42
Resta de Fechas Mostrar Resultado en Horas Claudia Lenguaje SQL 3 27-02-2006 21:52:30
Resta de Fechas Claudia Lenguaje SQL 4 25-11-2005 15:49:20


La franja horaria es GMT. Ahora son las 19:07:21.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios


right
Inactive Reminders By Icora Web Design