
17/11/2003, 19:18
|
 | Moderador | | Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses Puntos: 98 | |
Fíjate si te sirve la última función que depende de las dos primeras, el formato deberá ser en mm/dd/aaaa, toma siempre la fecha menor no importando el orden de los argumentos, además te permite seleccionar el día de la semana que quieres contar como string, es decir si yo quiero saber cuantos miércoles existen entre hoy y el 10 de diciembre haría esto:
<%
Function Que_dia(DiaACalcular)
DiaACalcular= lCase(DiaACalcular)
Select case DiaACalcular
case "domingo"
Que_dia = 1
case "lunes"
Que_dia = 2
case "martes"
Que_dia = 3
case "miercoles"
Que_dia = 4
case "jueves"
Que_dia = 5
case "viernes"
Que_dia = 6
case "sabado"
Que_dia = 7
End Select
End Function
Function FechaMenor(fecha1, fecha2)
fecha1= cdate(fecha1)
fecha2= cdate(fecha2)
If fecha1 < fecha2 Then
FechaMenor= fecha1
Else
FechaMenor= fecha2
End If
End Function
Function CalculaDias(fecha1, fecha2, DiaACalcular)
Mi_dia= Que_dia(DiaACalcular)
fechaAnterior= FechaMenor(fecha1, fecha2)
numero_dias = 0
If fechaAnterior <> fecha1 Then
fechaTemp= fecha1
fecha1 = fecha2
fecha2= fechaTemp
End If
For i= fecha1 to fecha2
If i <= fecha2 Then
If DatePart("W", i) = Mi_dia Then
numero_dias = numero_dias + 1
End If
End If
Next
CalculaDias= numero_dias
End Function
%> <%
estaFecha= CalculaDias(date(), "12/10/2003", "miercoles")
Response.Write(estaFecha)
%>
Faltaría validar dos que tres cosas, pero creo que con eso puedes trabajar.
Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway |