Problemas con rango dinámico en combobox

Muy buenas desde España.
Hace como seis meses que descubrí el mundo de las macros y ahora estoy metido con los formularios.
Lo cierto es que este foro me ha sido de muchísima utilidad para ir aprendiendo sobre este tema que me apasiona.
Bien, paso a exponer mi problema.
He creado un formulario en el que incluyo, entre otros objetos, dos combobox. Los valores de estos combobox los asigno creando un rango dinámico que cargo con el siguiente código.
Private Sub ComboBox1_enter()
ComboBox1.Clear
'Al inciar el formulario,
'seleccionamos la hoja con los datos
Sheets(2).Select
'Seleccionamos la celda A6
Range("A6").Select
'Hasta que no encuentre una columna vacía
'que llene todo con datos
Do While ActiveCell.Value <> ""
ComboBox1.AddItem ActiveCell.Value
'nos desplazamos una columna hacia abajo
ActiveCell.Offset(1, 0).Select
Loop
End Sub
El problema viene porque los valores de ese rango dinámico son horas con formato hh:mm:ss. Al desplegar el combo se lanza la macro y me aparecen los valores pero con formato general. En la imagen que adjunto se vé claramente el problema.

Agradecería alguna ayuda para corregir mi problema. Quizás tenga que modificar algo en las propiedades del combobox, no lo sé. Seguramente sea una tontería pero llevo atascado varios días y no doy con la solución.
De nuevo agradecer a todos los expertos que comparten su saber con los que no controlamos tanto del tema, en especial a Elsa Matilde, de cuyas respuestas a otras personas he obtenido mucha ayuda.

1 Respuesta

Respuesta
1
Ajustá la línea de carga del combo, agregando el formato que necesites:
ComboBox1. AddItem format(ActiveCell. Value, "hh:mm:ss")
Sdos
Elsa
* MI mejor recomendación para vos:
http://aplicaexcel.galeon.com/manual_UF.htm
Un millón de gracias Elsa por tu pronta respuesta.
Ya había topado con la propiedad "format" pero no sabía como implementarla en mi código y por eso pensé que no era la solución. También jugué con la propiedad "CDate" pero sin resultados.
Al final lo pude hacer de una manera muy rudimentaria. Véase. Descompuse cada valor de mi rango mediante fórmulas en horas, minutos y segundos en celdas distintas, les dí formato de texto y a las celdas que necesitaban un "0" se lo añadí. También les añadí el símbolo ":". Y luego ya en el código del combo le dije que tomara como valor la suma de esas tres celdas. Vamos, una odisea que me has solucionado con una simple línea.
Anduve cerca pero es lo que tiene aprender sin un buen tutor que te guíe paso a paso para no dejarte nada por el camino.
Mil gracias de nuevo y un placer que me hayas respondido. Ahora podré seguir con mi programación más tranquilo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas