Visual Basic.NET - Semanas que tiene un mes

 
Vista:

Semanas que tiene un mes

Publicado por María (6 intervenciones) el 23/02/2006 16:41:05
Hola a todos,

me gustaría saber si hay alguna función que me devuelva las semanas que pertenen a un determinado mes, de un año determinado.

Por ejemplo:

Año 2006
Mes 1 - Enero
Semana 1 - 1
Semana 2- 2 3 4 5 6 ...
Semana 3 - 9 ......
Semana 4 - 16 .......
Semana 5 - 23 ...
Semana 6 - 30 , 31 ..

Necesitaría saber:

- el número de semana de cada nuevo mes a partir de la primera semana entera, y las semanas partidas seran del anterior.

Enero sería: semana2, 3,4,5 y 6

Alguíen sabe como?¿?¿

Muchísimas gracias por adelantado!!

María.
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:Semanas que tiene un mes

Publicado por Harold (411 intervenciones) el 24/02/2006 19:23:30
Espero te ayude con esto.........................

Necesitas: combobox (cboMonth)
combobox(cboYear)
Listbox (lstWeeks)
Boton (BtnShow)
Eso es todo luego pega el codigo en el formulario y haz click en el boton.....

Imports System.Globalization

Dim i, x, j, dias, mes, myear As Integer
Dim mdia As String

Dim myCI As New CultureInfo("es-ES") '(España
Dim myCal As Calendar = myCI.Calendar
Dim myCWR As CalendarWeekRule = myCI.DateTimeFormat.CalendarWeekRule
Dim myFirstDOW As DayOfWeek = myCWR.FirstFourDayWeek

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

For x = 0 To 11
cboMonth.Items.Add(myCI.DateTimeFormat.MonthNames(x).ToUpper)
Next
For i = 2006 To 2099
cboYear.Items.Add(i)
Next
cboMonth.Text = cboMonth.Items(0).ToString
cboYear.Text = cboYear.Items(0).ToString
End Sub

Private Sub btnShow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnShow.Click
lstWeeks.Items.Clear()
myear = cboYear.Text
mes = cboMonth.SelectedIndex + 1 ' Mes
dias = System.DateTime.DaysInMonth(myear, mes) '(dias del mes)
For j = 1 To dias
Dim Ndate As New DateTime(myear, mes, j)
If Not lstWeeks.Items.Contains("Semana " & myCal.GetWeekOfYear(Ndate, myCWR, myFirstDOW)) Then
lstWeeks.Items.Add("Semana " & myCal.GetWeekOfYear(Ndate, myCWR, myFirstDOW))
End If
Next
End Sub
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