Retroceder   Foros del Web > Temas generales de computación > Programación > Visual Basic

Respuesta
 
Herramientas Desplegado
Antiguo 12-may-2008, 08:05   #1 (permalink)
SalomonSab ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2006
Mensajes: 56
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...
SalomonSab está desconectado   Responder Citando
Antiguo 12-may-2008, 09:06   #2 (permalink)
Colaborador
David el Grande tiene algunos puntos positivos de karma
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 2.516
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.
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Antiguo 12-may-2008, 09:27   #3 (permalink)
SalomonSab ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2006
Mensajes: 56
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.
SalomonSab está desconectado   Responder Citando
Antiguo 12-may-2008, 09:47   #4 (permalink)
Colaborador
David el Grande tiene algunos puntos positivos de karma
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 2.516
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?
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Antiguo 12-may-2008, 10:00   #5 (permalink)
SalomonSab ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2006
Mensajes: 56
Re: Semanas por Mes

Te agradeceria cualquier ayuda David el Grande.
SalomonSab está desconectado   Responder Citando
Antiguo 12-may-2008, 10:16   #6 (permalink)
Colaborador
David el Grande tiene algunos puntos positivos de karma
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 2.516
Idea 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.
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Antiguo 12-may-2008, 10:21   #7 (permalink)
SalomonSab ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2006
Mensajes: 56
Re: Semanas por Mes

Bien, te agradezco voy a probarlo y ya te contare por lo pronto gracias.
SalomonSab está desconectado   Responder Citando
Antiguo 12-may-2008, 10:28   #8 (permalink)
SalomonSab ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2006
Mensajes: 56
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.
SalomonSab está desconectado   Responder Citando
Antiguo 12-may-2008, 10:30   #9 (permalink)
Colaborador
David el Grande tiene algunos puntos positivos de karma
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 2.516
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
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 15:57.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93