none
restar una fecha a otra RRS feed

  • Pregunta

  • Que tal a todos! necesito su ayuda, intento restar dos fechas con horas, las fechas provienen de dos texts box, como un cronometro, al presionar un botón se obtiene la primer fecha con hora automáticamente del sistema en el primer text box, la segunda al presionar un segundo botón nos proporciona la hora y fecha actual en el segundo textbox, el resultado se introduciría en un tercer text box como días, horas y minutos transcurridos.

    Agradezco su ayuda por adelantado!!

    miércoles, 25 de julio de 2012 16:41

Respuestas

  • //Voy a suponer que las casillas de texto son de Windows Forms
    //y que se llaman txtInicio y txtFinal.
    //También voy a asumir que el formato en que el valor de fecha
    //fue escrito en cada una de las casillas de texto es acorde con
    //el seleccionado en las configuraciones del sistema operativo.
    //Si esto último no fuera cierto, puede tratar de obtener los valores
    //de fecha vía ParseExact() en vez de Parse().
    DateTime fechaIni = DateTime.Parse(txtInicio.Text);
    DateTime fechaFin = DateTime.Parse(txtFinal.Text);
    TimeSpan diferencia = fechaFin - fechaIni;
    //Muestre el resultado, por ejemplo en un message box:
    MessageBox.Show(diferencia.ToString());


    Jose R. MCP
    Code Samples

    • Marcado como respuesta Luis Pintado miércoles, 15 de agosto de 2012 16:00
    martes, 14 de agosto de 2012 17:32
  • hola porque no usas el

    DateTime. Subtract Method

    algo como ser

    Dim horaentrada As DateTime = Convert.ToDateTime(txtHoraEntada.Text)
    
    Dim horasalida As DateTime = Convert.ToDateTime(txtHoraSalida.Text)
    
    Dim hora As TimeSpan = horasalida.Subtract(horaentrada)
    
    txtHorasTrabjadas.Text = CStr(hora.TotalHours)

    Nota: no olvides mencionar en que lenguaje programas

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Luis Pintado miércoles, 15 de agosto de 2012 16:00
    martes, 14 de agosto de 2012 21:42

Todas las respuestas

  • ¿Y qué se le dificulta?  Porque puede usted crear dos objetos DateTime a partir de lo que se encuentra en el TextBox y simplemente restarlos.  La resta produce un objeto tipo TimeSpan.

    Jose R. MCP
    Code Samples

    miércoles, 25 de julio de 2012 16:55
  • ¿Y qué se le dificulta?  Porque puede usted crear dos objetos DateTime a partir de lo que se encuentra en el TextBox y simplemente restarlos.  La resta produce un objeto tipo TimeSpan.

    Jose R. MCP
    Code Samples

    Buen día, la verdad es que soy nuevo en esto de la programación y lo que me dices pues no lo entiendo muy bien, podría ejemplificar su respuesta?

    Muchas gracias de antemano

    martes, 14 de agosto de 2012 17:19
  • //Voy a suponer que las casillas de texto son de Windows Forms
    //y que se llaman txtInicio y txtFinal.
    //También voy a asumir que el formato en que el valor de fecha
    //fue escrito en cada una de las casillas de texto es acorde con
    //el seleccionado en las configuraciones del sistema operativo.
    //Si esto último no fuera cierto, puede tratar de obtener los valores
    //de fecha vía ParseExact() en vez de Parse().
    DateTime fechaIni = DateTime.Parse(txtInicio.Text);
    DateTime fechaFin = DateTime.Parse(txtFinal.Text);
    TimeSpan diferencia = fechaFin - fechaIni;
    //Muestre el resultado, por ejemplo en un message box:
    MessageBox.Show(diferencia.ToString());


    Jose R. MCP
    Code Samples

    • Marcado como respuesta Luis Pintado miércoles, 15 de agosto de 2012 16:00
    martes, 14 de agosto de 2012 17:32
  • hola porque no usas el

    DateTime. Subtract Method

    algo como ser

    Dim horaentrada As DateTime = Convert.ToDateTime(txtHoraEntada.Text)
    
    Dim horasalida As DateTime = Convert.ToDateTime(txtHoraSalida.Text)
    
    Dim hora As TimeSpan = horasalida.Subtract(horaentrada)
    
    txtHorasTrabjadas.Text = CStr(hora.TotalHours)

    Nota: no olvides mencionar en que lenguaje programas

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Luis Pintado miércoles, 15 de agosto de 2012 16:00
    martes, 14 de agosto de 2012 21:42