none
Como recorrer dos horas RRS feed

  • Pregunta

  • Buenas tardes a todos,

    Tengo una agenda hecha en vb.net  con dos horas y un intervalo:

    hora1="10:00"

    hora2="15:00"

    intervalo="15" minuto.

    Es una agenda para citar a pacientes.

    ¿Como puedo saber cuantas citas en numero hay entre esas dos horas?

    1000 gracias

    miércoles, 10 de abril de 2019 13:40

Respuestas

  • Hola:
    En un Form como el de la imagen

    Copia y pega el siguiente código

    Public Class Form1
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
            Me.dtp1.Format = DateTimePickerFormat.Custom
            Me.dtp1.CustomFormat = "HH:mm"
            Me.dtp2.Format = DateTimePickerFormat.Custom
            Me.dtp2.CustomFormat = "HH:mm"
        End Sub

        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            If DatePart(DateInterval.Hour, Me.dtp2.Value) < DatePart(DateInterval.Hour, Me.dtp1.Value) Then
                MessageBox.Show("La Hora Final NO puede ser menor")
                Return
            Else
                If DatePart(DateInterval.Hour, Me.dtp2.Value) = DatePart(DateInterval.Hour, Me.dtp1.Value) Then
                    If DatePart(DateInterval.Minute, Me.dtp2.Value) < DatePart(DateInterval.Minute, Me.dtp1.Value) Then
                        MessageBox.Show("El Minuto Final NO puede ser menor")
                        Return
                    End If
                End If
            End If
            '
            Dim liHora1 As Integer = DatePart(DateInterval.Hour, Me.dtp1.Value)
            Dim liMinuto1 As Integer = DatePart(DateInterval.Minute, Me.dtp1.Value)
            Dim liHora2 As Integer = DatePart(DateInterval.Hour, Me.dtp2.Value)
            Dim liMinuto2 As Integer = DatePart(DateInterval.Minute, Me.dtp2.Value)
            Dim liHoras As Integer = liHora2 - liHora1
            Dim liMinutos As Integer = (liHoras * 60) + liMinuto2 - liMinuto1
            Dim liCitas As Integer = liMinutos \ CInt(nudIntervalo.Value)
            lblCitas.Text = liCitas.ToString
        End Sub
    End Class

    Un saludo desde Bilbo
    Carlos

    • Marcado como respuesta Juan Martinez F miércoles, 10 de abril de 2019 14:53
    miércoles, 10 de abril de 2019 14:47

Todas las respuestas

  • Hola:
    En un Form como el de la imagen

    Copia y pega el siguiente código

    Public Class Form1
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
            Me.dtp1.Format = DateTimePickerFormat.Custom
            Me.dtp1.CustomFormat = "HH:mm"
            Me.dtp2.Format = DateTimePickerFormat.Custom
            Me.dtp2.CustomFormat = "HH:mm"
        End Sub

        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            If DatePart(DateInterval.Hour, Me.dtp2.Value) < DatePart(DateInterval.Hour, Me.dtp1.Value) Then
                MessageBox.Show("La Hora Final NO puede ser menor")
                Return
            Else
                If DatePart(DateInterval.Hour, Me.dtp2.Value) = DatePart(DateInterval.Hour, Me.dtp1.Value) Then
                    If DatePart(DateInterval.Minute, Me.dtp2.Value) < DatePart(DateInterval.Minute, Me.dtp1.Value) Then
                        MessageBox.Show("El Minuto Final NO puede ser menor")
                        Return
                    End If
                End If
            End If
            '
            Dim liHora1 As Integer = DatePart(DateInterval.Hour, Me.dtp1.Value)
            Dim liMinuto1 As Integer = DatePart(DateInterval.Minute, Me.dtp1.Value)
            Dim liHora2 As Integer = DatePart(DateInterval.Hour, Me.dtp2.Value)
            Dim liMinuto2 As Integer = DatePart(DateInterval.Minute, Me.dtp2.Value)
            Dim liHoras As Integer = liHora2 - liHora1
            Dim liMinutos As Integer = (liHoras * 60) + liMinuto2 - liMinuto1
            Dim liCitas As Integer = liMinutos \ CInt(nudIntervalo.Value)
            lblCitas.Text = liCitas.ToString
        End Sub
    End Class

    Un saludo desde Bilbo
    Carlos

    • Marcado como respuesta Juan Martinez F miércoles, 10 de abril de 2019 14:53
    miércoles, 10 de abril de 2019 14:47
  • Muchas gracias J. CARlos
    miércoles, 10 de abril de 2019 14:54