Utilizamos Cookies de terceros para generar estadísticas de audiencia y mostrar publicidad personalizada analizando tu navegación. Si sigues navegando estarás aceptando su uso. Más información X
PortadaForo AyudaTutoriales
InicioForosForo Programación

Compara fecha en visula basic

karel
2005-04-13 16:55 - Respuestas: 6 - Tema nº: 31781


Tengo un problema con VB, lo que necesito hacer es, que el usurio introduca
dos campos text1 y text2 que seran de tipo de fecha en formato dia / mes /año
y que en un text3 se muestre el reultado de restar el campo 1 y el campo 2,
esto quiere decir que sea posible restar fecha y que diga cuantos dia an tras currido
por ejemplo si en text1 = 31/03/05 - text2=13/04/05, el sesultado seria 13
osea que an trascurrido 13 dias text3=13, esto lo heecho con excel pero no
lo e podido lograr en VB6

Si pueden ayudarme muchas gracias..
Posibles soluciones:
Compara fecha en visula basicCompara fecha en visula basic
Hora y fecha en visual basicHora y fecha en visual basic
Ponerle una fecha a un programa en visual basicPonerle una fecha a un programa en visual basic
Como se hace una consulta x fecha en visual basic 6Como se hace una consulta x fecha en visual basic 6
FechaFecha
Godmol

Re: Compara fecha en visula basic - 2005-04-13 17:53 - Respuesta 2

Hola karel, probablemente el programa excel esté identificando por defecto los campos de texto en ese formato como fechas y por eso te realiza correctamente la operación, en VB6 tu debes implementar el código tanto para validar que sea un formato correcto de fecha, como la rutina que calculará los días transcurridos.

Como idea de programación para implementar esa funcionalidad de días transcurridos, puedes validar la fecha, y si es correcta trasnformarla a fecha juliana para posteriormente realizar la operación matemática. Transformar la fecha en juliana no es cortarla en tiritas como haría Karlos Arguiñano, es transformar una fecha en formato día/mes/año de tal manera que el día/mes se sustituye por el número de días trascurridos desde el principio del año hasta ese día/mes. Por ejemplo:

10/01/2005 sería 010/2005
01/02/2005 sería 032/2005
31/12/2005 sería 365/2005

Salu2

karel

Re: Compara fecha en visula basic - 2005-04-13 18:25 - Respuesta 3

Podrias exlicar con un ejemplo por que no entendi mucho o un algoritmo..???
ebolo

Re: Compara fecha en visula basic - 2005-04-13 18:36 - Respuesta 4

Hola a todos,
debes de usar la instrucción: DateDiff, en la ayuda del MSDN, encuentras lo siguiente:


DateDiff (Función)

Devuelve un valor de tipo Variant (Long) que especifica el número de intervalos de tiempo entre dos fechas determinadas.

Sintaxis

DateDiff(intervalo, fecha1, fecha2[, primerdíasemana[, primerasemanaaño]])

La sintaxis de la función DateDiff consta de los siguientesargumentos con nombre:

Parte Descripción
Intervalo Requerido.Expresión de tipo cadena con el intervalo de tiempo utilizado para calcular la diferencia entre fecha1 y fecha2.
Fecha1, fecha2 Requerido; Variant (Date). Las dos fechas que se van a utilizar en el cálculo.
Primerdíasemana Opcional.Constante que especifica el primer día de la semana. Si no se especifica, se asume que es el domingo.
Primerasemanaaño Opcional. Constante, que especifica la primera semana del año. Si no se especifica, se asume que es aquélla en la que se encuentre el 1 de enero.


Valores

Elargumento intervalo toma los valores siguientes:

Intervalo Descripción
yyyy Año
q Trimestre
m Mes
y Día del año
d Día
w Día de la semana
ww Semana
h Hora
n Minuto
s Segundo


El argumento primerdíasemana toma los siguientes valores:

Constante Valor Descripción
vbUseSystem 0 Utilice la configuración de la API de NLS.
vbSunday 1 Domingo (predeterminado)
vbMonday 2 Lunes
vbTuesday 3 Martes
vbWednesday 4 Miércoles
vbThursday 5 Jueves
vbFriday 6 Viernes
vbSaturday 7 Sábado

Constante Valor Descripción
vbUseSystem 0 Utilice la configuración de la API de NLS.
vbFirstJan1 1 Empieza con la semana en la que se encuentra el 1 de enero (predeterminado).
vbFirstFourDays 2 Empieza con la primera semana que tenga al menos cuatro días en el nuevo año.
vbFirstFullWeek 3 Empieza con la primera semana que esté completamente incluida en el nuevo año.


Comentarios

Puede utilizar la función DateDiff para determinar el número de intervalos especificados que existen entre dos fechas. Por ejemplo, con DateDiff podría calcular el número de días entre dos fechas o el número de semanas entre hoy y el final del año.

Si desea saber el número de días entre fecha1 y fecha2, puede utilizar Día del año ("y") o Día ("d"). Cuando intervalo es Día de la semana ("w"), DateDiff devuelve el número de semanas entre las dos fechas. Si fecha1 es lunes, DateDiff contará el número de lunes hasta fecha2. En la cuenta incluirá fecha2, pero no fecha1. Si intervalo es Semana ("ww"), la función DateDiff devolverá el número de semanas entre las dos fechas. En este caso contará el número de domingos entre fecha1 y fecha2. DateDiff contará fecha2 si es domingo, pero no fecha1, aunque sea domingo.

Si fecha1 se refiere a un momento posterior en el tiempo a fecha2, la función DateDiff devolverá un número negativo.

El argumento primerdíasemana afecta a los cálculos que utilizan "w" y "ww" como símbolos de intervalo.

Si fecha1 o fecha2 es unliteral de fecha, el año, si se especifica, pasará a ser una parte permanente de la fecha. Sin embargo, si fecha1 o fecha2 está comprendida entre comillas dobles ("") y se omite el año, se insertará el año en curso en el código cada vez que se evalúe la expresión fecha1 o fecha2. Así es posible escribir código que se pueda usar en años distintos.

Cuando compara el 31 de diciembre con el 1 de enero del año siguiente, DateDiff para un año ("yyyy") devolverá 1 aunque sólo haya pasado un día.


Saludos.
karel

Re: Compara fecha en visula basic - 2005-04-13 18:46 - Respuesta 5

Gracias esto es algo como lo que estaba buscando una ultima molestia, puedes mandarme el link de msdn de VB

Gracias...
Página:1 Siguiente

Respuestas relacionadas:

FechaFechaForo
Fecha en fotosFecha en fotosForo
Desconfiguracion de fecha cpuDesconfiguracion de fecha cpuForo
Fecha en excelFecha en excelForo
Formato de fechaFormato de fechaForo
Problemas con la fechaProblemas con la fechaForo
Reinicio de fechaReinicio de fechaForo
Fecha y horaFecha y horaForo
Fecha en carpetaFecha en carpetaForo
Fecha y hora......Fecha y hora......Foro
InicioSecciones
^ SubirAviso legal
Política Privacidad
Configurarequipos30 Junio 2025