¿Cómo alimentar un listbox en vba manualmente?

Amigos necesito cargar encabezados en un listbox al inicializar ya que estoy cargando datos manualmente en dicho listbox y no alimentándolo desde alguna tabla.

¿Cómo puedo hacer esto?

Muchas gracias.

Este es mi código hasta el momento:

Private Sub UserForm_Initialize()

Me.ListBox1.ColumnCount = 8

Me.ListBox1.ColumnWidths = "25 pt; 90 pt; 270 pt; 60 pt; 60 pt; 30pt;60pt; 60pt"

End sub

1 respuesta

Respuesta
1

[Hola

Si cuando dices "manualmente" te refieres a que usas el método "AddItem" para ir llenando el "ListBox", pues dicho método no es compatible con la propiedad "ColumnHeads". Dicha propiedad solo se puede usar cunado se llena el "LitsBox" a través de "RowSource". Para tu caso (de ser ese) no hay alternativas posibles a través de las propiedades del "ListBox", muchas personas colocan, por ejemplo, un "Label" (o varios) para simular los encabezados.

Saludos]

Abraham Valencia

El problema de poner labels es que cuando desplazo la lista horizontalmente los labels se quedan quietos haciendo que la información no coincida.

[Hola

Claro, entiendo eso del desplazamiento, pero si vas a usar "AddItem" tienes que adaptarte a las limitaciones que ocurren. Otra alternativa es que tu primera fila (o sea los encabezados) lo pongas, por ejemplo, en mayúsculas y como lo demás asumo que está en minúsculas, se notará cierta diferencia en los datos del "ListBox", claro, al desplazar verticalmente no se verán todo el tiempo pero, son alternativas.

Abraham Valencia

SI. Tienes razón voy a usar este ultimo método. Abraham, ¿sabes por qué cuando trato de usar más de 10 columans en el listbox me genera un error de compilación?

Siguiendo con los límites, el método "AddItem" solo permite un máximo de 10 columnas, si deseas más hay que usar "List" o combinas "List" y "AddItem".

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas