Мне нужно пропустить выходные.
доброе утро,
Я работаю над проектом, где пользователь добавляет дату в текстовое поле и программа создает список действий с начальной и конечной датами, а также создает действия в зависимости от количества барабанов Ci, то, что я ищу, это то, что программа создает список действий с датами с понедельника по пятницу или с понедельника по субботу или с понедельника по воскресенье, потому что если вы этого не сделаете, программа вычисляет дни без условий.
Как я могу решить эту проблему?
Dim Table As New DataTable Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim date1 As Date Try date1 = CType(TextBox1.Text, Date) Catch Exit Sub End Try Dim numRows As Integer If Integer.TryParse(TextBox4.Text, numRows) Then If (numRows >= 1) Then For i As Integer = 1 To numRows Table.Rows.Add("Manufacturing", "Channel", "Cut plate C" & i, DateAdd(DateInterval.Day, 1, date1), DateAdd(DateInterval.Day, 2, date1)) Table.Rows.Add("Manufacturing", "Channel", "Rolled plate C" & i, DateAdd(DateInterval.Day, 3, date1), DateAdd(DateInterval.Day, 4, date1)) Table.Rows.Add("Manufacturing", "Channel", "Longituid welding C" & i, DateAdd(DateInterval.Day, 5, date1), DateAdd(DateInterval.Day, 6, date1)) Table.Rows.Add("Manufacturing", "Channel", "Re rolled C" & i, DateAdd(DateInterval.Day, 7, date1), DateAdd(DateInterval.Day, 8, date1)) date1 = DateAdd(DateInterval.Day, 8, date1) Next Else MessageBox.Show("Value: " & TextBox4.Text & " El numero de filas debe ser mayor o igual a 1", "Error") End If Else MessageBox.Show("Value: " & TextBox4.Text & " Número invalido", "Error") End If For C As Integer = 0 To DataGridView1.Columns.Count - 1 DataGridView1.Columns(C).AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells Next C End Sub
Что я уже пробовал:
Dim Eleccion As Integer = 0 Private Sub RBEleccionXXX_CheckedChanged(sender As Object, e As EventArgs) Handles RBEleccion1.CheckedChanged, RBEleccion2.CheckedChanged, RBEleccion3.CheckedChanged Select Case sender.name Case "RBEleccion1" Eleccion = 1 Case "RBEleccion2" Eleccion = 2 Case "RBEleccion3" Eleccion = 3 End Select
Select Case Eleccion ' Los días son Domigo = 0, Lunes = 1, …, Sabado = 6. Case 1 If date1.DayOfWeek = 6 Then date1 = date1.AddDays(2) ElseIf date1.DayOfWeek = 0 Then date1 = date1.AddDays(1) End If Case 2 If date1.DayOfWeek = 0 Then date1 = date1.AddDays(1) End If Case 3 ' Nada hacer End Select
ZurdoDev
Легко. Проверьте день недели, а затем либо добавьте его, либо не добавляйте. Где ты застрял?
Maciej Los
Ваш вопрос не совсем ясен. Пожалуйста, будьте более конкретны и предоставьте более подробную информацию о вашей проблеме. Какое условие вам нужно определить для расчета дат.