Scroll horizontal en ListBox

Hola, encantado de volver a aprender contigo.
En un formulario voy añadiendo información y veo que automáticamente se genera un scroll vertical. ¿Cómo se hace para que salga también el scroll horizontal? En las opciones de los TextBox he visto que sí lo contempla, pero en las listas no lo encuentro.
Gracias por atenderme

1 respuesta

Respuesta
1
Respecto a la primera pregunta, me temo que no será posible, toda vez que los Listbox y los ComboBox muestran líneas de selección y su ancho está fijado por el que le hayas determinado al diseñar el formulario.
Claro está que tenga que agregar una barra de desplazamiento vertical para que pueda accederse a cualquiera de las opciones listadas.
---
Vamos con la segunda...
Seguramente debe haber formas más "ortodoxas" de hacerlo pero el siguiente macro resuelve tu problema.
Es un loop que te permite ver el árbol de tu disco y seleccionar la carpeta -una vez encontrada- presionando el botón "Cancelar" (El titulo de la ventana lo avisa). Inmediatamente agrega un registro más a tu lista y te pregunta sid eseas continuar. Necesito que la primer celda del rango, se defina con un nombre: "MiList" y que esté en un hoja llamada "Lista". (Puedes cambiar estos dos datos en la macro para adaptarla a tu hoja)
Entonces, en el Editor de Visual basic, agrega un módulo y pega este código:
Sub ListDir()
Dim ListRange As Range
Dim itemnew
Set ListRange = Sheets("Lista").Range("MiList")
GoOn = vbYes
Do While GoOn = vbYes
file2Open = Application.GetOpenFilename(, , "PRESIONE BOTON ""CANCELAR"" para seleccionar")
Application.ScreenUpdating = False
itemnew = CurDir
Sheets("Lista").Select
ListRange.Select
Selection.End(xlDown).Select
ActiveCell.Offset(1).Value = itemnew
ActiveCell.Offset(1).Interior.ColorIndex = 33
Application.ScreenUpdating = True
GoOn = MsgBox("Continua Selección?", vbYesNo, "SELECION de DIRECTORIOS")
Loop
End Sub
Prueba y dime si te resolvió el problema.
Un abrazo!
Fernando
También le estoy dando vueltas a obtener una ventana en donde aparezca mi árbol de directorios, de manera que pueda yo seleccionar los directorios que necesite y se vayan añadiendo a una columna concreta de la hoja activa.
Buscando buscando encontré el comando Treeview, pero ni encuentro información en la ayuda que me aclare ni soy capaz de dar con la clave.
Gracias.
Hola Fernando, no sé su a ti también te ha pasado, pero desde que le he añadido la rutina que me mandaste (funciona perfectamente) cada vez que cierro el libro me sale el maldito mensaje de Windows: "Este programa ha efectuado una roperación no valida, etc..." y la próxima vezque intento abrirlo sólo puedo hacerlo en modo lectura.
¿No crees que puede ser porque esa aplicación que abro no está bien definida o algo así? (Te digo eso por decirte algo, no tengo ni la más remota idea, pero no es casualidad, ya lo he probado: Si ejecuto esa macro, me da problemas y si no, no)
Gracias por atenderme de nuevo
Un abrazo
Luis
En realidad no sé a qué applicación te refieres...
Yo nio veo que se habrá ninguna, a menos que tengas otras macros funcionando.
USando el editor de Visual basic, fíjate en el objeto "Thisworkbook" si existen líneas de código asociado a algún evento, por eljemplo: Before_close.
Luego, haz lo mismo con cada hoja.
Otra alternativa es controlar que la selección de directorios termine en tu disco local. No sé si tal selección es efectuada sobre tal disco o puede que lea otros...
Fuera de eso este es una macro que se cierra en sí misma, simplemente pega un texto en una lista. Efectivamente probé esta rutina antes de enviártela y no provocó conflicto alguino en mi PC.
Intenta con las alternativas mencionadas.
Un abrazo!
Fernando
Hola de nuevo.
No he encontrado nada extraño. Sólo tengo un disco duro. Esta macro forma parte de otra que busca y reemplaza texto en archivos de excel (te pregunté algo sobre esto también) y la función que tiene es crear la lista desde donde se van a hacer las búsquedas. Si quieres te mando el archivo comprimido y le echas un vistazo ¿ok? Mándame tu mail si te parece bien.
Gracias
Ya tienes mi dirección. No sería la primera vez que me escribes.
Pero bueno, esta es mi dirección:
fejoal((en))hotmail.com
(Reemplaza "((en))" con "@".)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas