Bonsoir,

voila mon problème j'ai une fenêtre dans laquelle l'utilisateur sélectionne une date par le "datetimepicker" affecter à la variable p_date :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dim p_date As Date = DateTimePicker1.Text
ensuite l’utilisateur à deux "combobox", pour sélectionné sur la première l'heure de début et sur la suivante l'heure de fin :
dans les deux "combobox" j'ai les valeurs suivantes :
8:00, 9:00, 10:00, 11:00, 12:00, 13:00, 14:00, 15:00, 16:00, 17:00, 18:00, 19:00, 20:00, 21:00, 22:00, 23:00, 00:00, 1:00, 2:00, 3:00, 4:00, 5:00, 6:00, 7:00, 8:00
ce que j'essaye de faire c'est que lorsque l'utilisateur sélectionne sur l'une des "combobox" une heure supérieur à 00:00 alors la date s'incrémente de 1 jour.

j'ai essayé ceci : J'y suis presque le seul soucis est que je même si je sélectionne une heure de fin supérieur à 00:00 la variable date "date_de_fin" ne s'incrémente pas d'un jour

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
    Dim xd As DateTime
    Dim xf As DateTime
    Dim date_de_debut As Date
    Dim date_de_fin As Date
    Dim supdate As Date = DateAdd("d", 1, p_date) 'ajoute un jour à la date
 
Private Sub ComboBox2_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedValueChanged
        xd = Convert.ToDateTime(DirectCast(sender, ComboBox).SelectedItem)
        If xd < Convert.ToDateTime("23:59") Then
            'MessageBox.Show("Poste de jour")
            date_de_debut = p_date & " " & xd.ToString("H:m")
        Else
            'MessageBox.Show("Poste de nuit")
            date_de_debut = supdate & " " & xd.ToString("H:m")
        End If
    End Sub
 
    Private Sub ComboBox3_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox3.SelectedValueChanged
        xf = Convert.ToDateTime(DirectCast(sender, ComboBox).SelectedItem)
        If xf < Convert.ToDateTime("23:59") Then
            date_de_fin = p_date & " " & xf.ToString("H:m")
        Else
            date_de_fin = supdate & " " & xf.ToString("H:m")
        End If
    End Sub