ACC: Ejemplo de función para calcular diferencia entre fechas

Id. de artículo: 551176 - Ver los productos a los que se aplica este artículo
Este artículo se publicó anteriormente con el número E11126
Expandir todo | Contraer todo

Resumen


Moderate: Requires basic macro, coding, and interoperability skills.



Este artículo muestra cómo crearse una función de ejemplo que calcule la
diferencia entre dos fechas dadas y se pueda especificar el formato con
el que obtendremos el resultado.

M

Más información



Microsoft proporciona ejemplos de programación con fines ilustrativos
únicamente, sin ninguna garantía tanto expresa como implícita, incluyendo
pero sin limitarse a, las garantías implícitas de comerciabilidad e/o
idoneidad para un fin determinado. En este artículo se da por supuesto que ya
conoce el lenguaje de programación que se demuestra y las herramientas
empleadas para crear y depurar procedimientos. Los profesionales de soporte
técnico de Microsoft pueden explicarle la funcionalidad de un determinado
procedimiento, pero no modificarán estos ejemplos para ofrecer mayor
funcionalidad o crear procedimientos adaptados a sus necesidades específicas.
Si tiene poca experiencia en programación, quizá desee ponerse en contacto
con el servicio de consultoría que ofrece la subsidiaria local de Microsoft.
Para obtener más información acerca de las opciones de soporte técnico
disponible de Microsoft, consulte la siguiente página del World Wide Web:

http://www.microsoft.com/spanish/soporte/


Un forma de poder obtener la diferencia entre dos fechas es usando la función
predefinida DifFecha. El uso de esta fucnión se ve limitado a la hora de
mostrar el resultado obtenido, es decir, los resultados se podrán obtener o
en horas, o en minutos, o en días, pero no con un formato combinado de todos.

Usando la función que incluimos posteriormente se podrá obtener la diferencia
entre las funciones además de poder especificar en qué formato se obtendrá el
resultado de la diferencia.

Los parámetros que se pasarán a la función son:

- Fecha Incial.
- Fecha Final.
- Formato del resultado. Este parámetro podrá tomar los siguientes valores:

a. ConDia, formato del resultado dia:hora:minutos:segundos
b. ConHora, formato del resultado hora:minutos:segundos
c. ConMin, formato del resultado minutos:segundos
d. ConSeg, formato del resultado segundos.

Cómo crear y usar la función DarFecha()

1. Abrir la base de datos en la que se quiera utilizar la función.

2. Desde la pestaña de módulos, seleccionar nuevo.

3. Insertar el siguiente código:

Function darfecha(Fechainicio As Date, FechaFinal As Date, formato As String) As String

'Formato ConDia, ConHora, ConMin, ConSeg

Dim dblInterval As Double
Dim lngTotalHours As Long
Dim lngTotalMins As Long
Dim lngTotalSecs As Long
Dim lngDays As Long
Dim lngHours As Long
Dim lngMins As Long
Dim lngSecs As Long
Dim fechaes As String

dblInterval = Abs(FechaFinal - Fechainicio)

lngDays = Int(CSng(dblInterval))
lngTotalHours = Int(CSng(dblInterval * 24))
lngTotalMins = Int(CSng(dblInterval * 1440))
lngTotalSecs = Int(CSng(dblInterval * 86400))

' Determina las fracciones de tiempo
lngHours = lngTotalHours Mod 24
lngMins = lngTotalMins Mod 60
lngSecs = lngTotalSecs Mod 60

Select Case formato
'Calcula número total de segundos.
Case "ConSeg"
fechaes = lngTotalSecs & " Segundos"

'Calcula el número de minutos y segundos restantes
Case "ConMin"
fechaes = lngTotalMins & ":" & Format$(dblInterval, "ss") _
& " Minutos:Segundos"

'Calcula número de horas
Case "ConHora"
fechaes = lngTotalHours & ":" & Format$(dblInterval, "nn") _
& ":" & Format$(dblInterval, "ss") & " Horas:Minutos:Segundos"

'Calcula en número de días
Case "ConDia"
fechaes = lngDays & " dfas " & lngHours _
& " Horas " & lngMins & " Minutos " & _
lngSecs & " Seconds"
End Select

darfecha = fechaes

End Function

4. Guardar y darle nombre al módulo.

Desde este momento podrá usar esta función como cualquiera de las
personalizadas incluidas en Microsoft Access dentro de esa base de datos.

Propiedades

Id. de artículo: 551176 - Última revisión: miércoles, 18 de febrero de 2004 - Versión: 1.0
La información de este artículo se refiere a:
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 97 Standard Edition
Palabras clave: 
KB551176

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com