Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Semanas por Mes

Estas en el tema de Semanas por Mes en el foro de Visual Basic clásico en Foros del Web. Hola que Tal, Alguien me puede ayudar, como sacar las semanas que tiene un mes por ejemplo en mi caso inicia la seman el Lunes ...
  #1 (permalink)  
Antiguo 12/05/2008, 08:05
 
Fecha de Ingreso: noviembre-2006
Mensajes: 227
Antigüedad: 17 años, 5 meses
Puntos: 6
Semanas por Mes

Hola que Tal, Alguien me puede ayudar, como sacar las semanas que tiene un mes por ejemplo en mi caso inicia la seman el Lunes y Temina El Domingo para el caso de Enero como el lunes es de otro año tomando encuenta el año 2008, serian solo Martes, Miercoles, Jueves, Viernes, Sabado y Domingo serian 6 Dias, Espero haberme explicado y si no ya me lo diran. por lo pronto gracias y espero respuestas...
  #2 (permalink)  
Antiguo 12/05/2008, 09:06
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Re: Semanas por Mes

Cita:
Iniciado por SalomonSab Ver Mensaje
Hola que Tal, Alguien me puede ayudar, como sacar las semanas que tiene un mes por ejemplo en mi caso inicia la seman el Lunes y Temina El Domingo para el caso de Enero como el lunes es de otro año tomando encuenta el año 2008, serian solo Martes, Miercoles, Jueves, Viernes, Sabado y Domingo serian 6 Dias, Espero haberme explicado y si no ya me lo diran. por lo pronto gracias y espero respuestas...
No, no he entendido tu duda, pues un mes siempre tendrá 4 semanas completas (de Lunes a Domingo, o de cualquier otro día) y en caso de que no sea Febrero tendrá más una mitad de semana, no entiendo qué es lo quieres hacer con esos Datos. Si podrías explicarnos mejor.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 12/05/2008, 09:27
 
Fecha de Ingreso: noviembre-2006
Mensajes: 227
Antigüedad: 17 años, 5 meses
Puntos: 6
Re: Semanas por Mes

Bien hare todo lo posible para explicarme haber si nos entendemos.

Estoy desarrollando un programa donde se le paga a los trabajadores y necesito sacar esos periodos de pago: es en lo que estoy atorado

coloco una imagen a ver si asi nos explicamos...

como no se como se colocan imagenes aqui. lo pongo de esta manera a ver si nos entendemos..

Código:
Mes                N° Semana           Dias          F. Inicia                 F. Termina

                    01                  6             01-Ene-2008              06-Ene-2008
                    02                  7             07-Ene-2008              13-Ene-2008
ENERO               03                  7             14-Ene-2008              20-Ene-2008
                    04                  7             21-Ene-2008              27-Ene-2008
                    05                  7             28-Ene-2008              03-Feb-2008
                    06                  7             04-Feb-2008              10-Feb-2008
FEBRERO             07                  7             11-Feb-2008              17-Feb-2008


Asi sucesivamente hasta llegar ha Diciembre...
Espero que ahora si nos entendamos cualquier aporte se agradece y por lo pronto te agradezco David el Grande por haberte tomado la molestia de contestar.
  #4 (permalink)  
Antiguo 12/05/2008, 09:47
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Re: Semanas por Mes

Es que tu tema me ha confundido, creo que debería ser Semanas por año, trataré de buscar una solución a tu pregunta.

P.S.: ¿Y si el último día del año es un día de la semana y no un Domingo? ¿También cuenta la última semana?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 12/05/2008, 10:00
 
Fecha de Ingreso: noviembre-2006
Mensajes: 227
Antigüedad: 17 años, 5 meses
Puntos: 6
Re: Semanas por Mes

Te agradeceria cualquier ayuda David el Grande.
  #6 (permalink)  
Antiguo 12/05/2008, 10:16
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Re: Semanas por Mes

Hice un código de ejemplo, espero que pueda ayudarte con tu idea (una Macro de Excel, pero creo que también funcionará en VB6). Algo así:
Código:
 
Function Semana(vYear As Integer, NumSemana As Byte, FechaInicio As Date, FechaFin As Date) As Byte
Dim Inicio As Byte
Dim FirstWeek As Byte
Dim InitDate As Date
Inicio = Weekday(CDate("01/01/" & vYear), vbMonday)
If Inicio > 1 Then
    FirstWeek = 7 - (Inicio - 1)
End If
If NumSemana > 1 Then
    InitDate = DateSerial(vYear, 1, 1 + FirstWeek)
    FechaInicio = DateSerial(vYear, 1, Day(InitDate) + (7 * (NumSemana - 2)))
    FechaFin = DateSerial(Year(FechaInicio), Month(FechaInicio), Day(FechaInicio) + 6)
    FirstWeek = 7
    If Year(FechaFin) > vYear Then
        FechaFin = CDate("31/12/" & vYear)
        FirstWeek = DateDiff("d", FechaInicio, FechaFin) + 1
    End If
Else
    FechaInicio = CDate("01/01/" & vYear)
    FechaFin = DateSerial(vYear, 1, FirstWeek)
End If
Semana = FirstWeek
End Function
Para llamarlo haces así:
Código:
 
Dim DateInicio As Date
Dim DateFin As Date
Dim NumDias As Byte
NumDias = Semana(2008, 1, DateInicio, DateFin)
MsgBox "Número de Días: " & NumDias & vbCrLf & "Fecha de Inicio: " & DateInicio & vbCrLf & "Fecha Fin: " & DateFin
'El parámetro NumSemana puedes cambiarlo por el número de la semana de la que deseas obtener los Datos...
Espero que te ayude en algo.
Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 12/05/2008, 10:21
 
Fecha de Ingreso: noviembre-2006
Mensajes: 227
Antigüedad: 17 años, 5 meses
Puntos: 6
Re: Semanas por Mes

Bien, te agradezco voy a probarlo y ya te contare por lo pronto gracias.
  #8 (permalink)  
Antiguo 12/05/2008, 10:28
 
Fecha de Ingreso: noviembre-2006
Mensajes: 227
Antigüedad: 17 años, 5 meses
Puntos: 6
Re: Semanas por Mes

Gracias, David el Grande te agradezco por tu aportación, el codigo funciona muy bien, ahora lo que voy hacer es colocar toda la tabla en una grilla para que me ponga todos los periodos de la semana en que se tienen que pagar. y de nuevo

mil pero mil gracias.
  #9 (permalink)  
Antiguo 12/05/2008, 10:30
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Re: Semanas por Mes

Cita:
Iniciado por SalomonSab Ver Mensaje
Gracias, David el Grande te agradezco por tu aportación, el codigo funciona muy bien, ahora lo que voy hacer es colocar toda la tabla en una grilla para que me ponga todos los periodos de la semana en que se tienen que pagar. y de nuevo

mil pero mil gracias.
De nada, me alegro que haya funcionado correctamente.
Saludos
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 00:27.