Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/03/2004, 19:34
ivan_noe
 
Fecha de Ingreso: enero-2004
Mensajes: 154
Antigüedad: 21 años, 2 meses
Puntos: 0
Vamos a ver, porque estas formulas no las saca ni Einstein.
Si me he equivocado me lo decis, pero creo que funciona:

Obtenemos el dia de la semana del primer dia del mes con el que estamos trabajando:
P.e. hoy es 27/03/2004 el primer dia fue el 01/03/2004 y que dia cayó... creo que Lunes(1 en numérico)
diaSemanaMes=weekday(dateadd("d",-day(now())-1,now()))
con esto obtengo el dia de la semana de la fecha actual menos los dias menos 1. si es dia 27 -27-1 tendré dia 1/3/2004 y con weekday obtendré que es 1 (Lunes)
ahora aplico la fórmula para saber en que semana del mes estamos:
semana=( ( day(now())+diaSemanaMes-2 )/7 )+1
Y ya tenemos la semana dentro del mes.

Que tal???

NOTA: Como lo he hecho de cabeza no se si la función weekday devuelve lunes-->1 martes-->2... pero eso además depende del pais por lo que miraos como trabaja la función (http://www.programacion.com/asp/tutorial/vbscript/11/) y ajustais el 2 debidamente. Si lunes os sale 1 se usa como está si os sale 0 en vez de -2 poner -1
Si para vos el domingo es el primer dia de la semana domingo debe ser 1,lunes-->2,martes-->3

En resumen:
diaSemanaMes=weekday(dateadd("d",-day(now())-1,now()))
semana=( ( day(now())+diaSemanaMes-2 )/7 )+1
Response.Write("Estamos en la semana "&semana&" del mes")

Saludos y no pensar mucho!!!!!