border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

  #1 (permalink)  
Antiguo 12-10-2006, 21:12:15
Un Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
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
Responder Con Cita
  #2 (permalink)  
Antiguo 13-10-2006, 08:10:08
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.268
J.M.Movilla Valoración +2
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
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #3 (permalink)  
Antiguo 17-10-2006, 18:23:50
Un Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
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
Responder Con Cita
  #4 (permalink)  
Antiguo 17-10-2006, 19:38:39
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.268
J.M.Movilla Valoración +2
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
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #5 (permalink)  
Antiguo 17-10-2006, 19:41:19
Un Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
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
Responder Con Cita
  #6 (permalink)  
Antiguo 05-11-2006, 04:11:05
Un Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
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
Responder Con Cita
  #7 (permalink)  
Antiguo 06-11-2006, 11:55:25
Un Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
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
Responder Con Cita
  #8 (permalink)  
Antiguo 22-11-2006, 21:47:29
Un Nuevo Amigo
 
Registrado: oct 2006
Posts: 4
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!
Responder Con Cita
Respuesta


Herramientas
Desplegado

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 2003 & 2005 1 06-01-2008 16:31:20
¿Como calcular los meses y dias acumulados? lesthad Visual Basic.NET 2003 & 2005 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 21:43:42
Resta de Fechas Mostrar Resultado en Horas Claudia Lenguaje SQL 3 27-02-2006 20:52:30
Resta de Fechas Claudia Lenguaje SQL 4 25-11-2005 14:49:20


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

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right