Visual Basic - Función que devuelva las fechas de una semana

Life is soft - evento anual de software empresarial
 
Vista:

Función que devuelva las fechas de una semana

Publicado por monika (1 intervención) el 22/01/2003 12:21:37
Hola.
Necesito saber como puedo obtener las fechas pertenecientes a la semana de un año en concreto.
La función DatePart te devuelve justo al reves; sabiendo la fecha, te devuelve la semana. Yo necesito lo contrario, pasandole la semana y el año, que me devuelva el rango de fechas.

A ver si alguien me puede ayudar.
Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Función que devuelva las fechas de una semana

Publicado por Pedro Luis (878 intervenciones) el 22/01/2003 19:09:34
Function Lunes(Semana As Integer, Año As Integer)
Dim PriDia As Date, PriDiaSem As Date, DiaSem As Integer
PriDia = CDate("1-1-" & Año) 'Primer dia de ese año
DiaSem = DatePart("w", PriDia, 2) 'dia de la semana del primer dia
PriDiaSem = PriDia - DiaSem + 1 'Primer dia de la semana de ese año (generlamente en el año anterior)
Lunes = PriDiaSem + (Semana * 7)
End Function

Como ves he creado una funcion llamada lunes, porque me da el lunes de la semana en cuestion
Si en un boton o de cualquier otra forma, preguntas dia=lunes(3,2003) , verás que te devuelve 20-1-2003
En primer lugar calculamos el primer dia del año (1-1-2003)
Con la funcion DatePart obtenemos que dia de la semana es (3) o sea Miercoles
Si al primer dia del año le quitamos 2 dias (3-1) obtenemos la fecha del lunes de esa semana (30-12-2002)
Si a esa fecha le sumamos los dias correspondientes a las semanas (semana*7), obtenemos la fecha del lunes de esa semana
Esa fecha + 7 dias te da el domingo de la semana en cuestión
Con todo esto no solo hemos aprendido ha navegar por las fechas (y he dicho hemos), sino que además nos hemos familiarizado con las Funciones
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Función que devuelva las fechas de una semana

Publicado por monika (3 intervenciones) el 23/01/2003 09:39:34
Hola, Pedro.
Muchas gracias por haberte molestado en crear la función, pero me he dado cuenta que a la hora de multiplicar la semanas en vez de (Semana * 7) debe ser (Semana -1) * 7, porque sino te calcula el lunes de la semana nº 4, en vez de la nº3.

Gracias de todas formas.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar