Hora en un textBox

Resuelto
Noodlesnood Mensajes publicados 33 Estado Miembro -  
 Lorenzozo -
Hola,

Aquí está mi problema: me gustaría transponer en un textBox mi número de horas que proviene de la celda C96, pero me da un número con decimales con esta parte del código:

UsfNew2.TextBox10.Value = Feuil12.Range("C96").Value

¿Debo hacer una conversión a cadena de caracteres? ¿De qué manera?

Nood
Configuración: Windows XP Firefox 2.0.0.1

8 respuestas

  1. blux Mensajes publicados 2064 Fecha de registro   Estado Moderador Última intervención   3 455
     
    Hola,

    es normal, EXCEL guarda las horas como múltiplos de días:

    12:00 ->0,5
    01:00 ->0,041666667
    24:00 ->1

    Por lo tanto, necesitas utilizar las funciones que devuelven la hora, los minutos y los segundos a partir de un número de serie:
    UsfNew2.TextBox10.Value = HORA(Feuil12.Range("C96").Value) & ":" & MINUTO(Feuil12.Range("C96").Value) & ":" & SEGUNDO(Feuil12.Range("C96").Value)

    ¿Te parece bien así?

    --
    A+ Blux
     "Los tontos se atreven a todo. Es incluso así como los reconocemos"
    0
  2. Noodlesnood Mensajes publicados 33 Estado Miembro 2
     
    Hola blux,

    He intentado tu método y tengo un mensaje de error 'Sub o Función no definida' (cursor sobre HORA). Gracias por tu ayuda ; )

    Nood
    0
  3. Noodlesnood Mensajes publicados 33 Estado Miembro 2
     
    No puedo transponer la hora en el TextBox. ¿Debo declarar las funciones HORA, MINUTO y SEGUNDO antes de usarlas? ¿Cómo?
    0
  4. blux Mensajes publicados 2064 Fecha de registro   Estado Moderador Última intervención   3 455
     
    Lo siento, no había prestado atención a que era VBA...

    Así que está en inglés: hour, minute, second...

    --
    A+ Blux
     "Los tontos se atreven a todo. Es incluso por eso que los reconocemos"
    0
  5. Noodlesnood Mensajes publicados 33 Estado Miembro 2
     
    Debería haberlo pensado: D ... En cualquier caso, gracias blux, me eres de gran ayuda para mí que soy principiante ; ).
    0
  6. Daranc
     
    La instrucción siguiente:
    TextBox1.Value = Format(Range("a1").Value, "hh:mm:ss AMPM")
    devuelve el valor de la celda A1 en formato hora minuto segundo PM o AM
    Daranc
    0
  7. Daranc
     
    en tu caso
    UsfNew2.TextBox10.Value = formato(Feuil12.Range("C96").Value,"hh:mm:ss AMPM")
    Daranc
    0
  8. Lorenzozo
     
    Hola,

    Estoy intentando usar los códigos a continuación, pero ¿dónde debo colocar esta secuencia de código? ¿En el procedimiento principal que utiliza esta caja de texto o en el procedimiento que maneja la apertura del cuadro de diálogo donde se encuentra la caja de texto? ¡Ayuda, por favor!

    Gracias de antemano

    Lorenzozo
    0