Hola,
Estimados yo soy bastante novato en el tema de Visual Basic, les agradeceria por favor me ayuden con un problema que tengo actualmente, he configurado mi listbox con lo que me han sugerido, pero solo puedo completar diez coulumnas no me permite mas, el listbox que estoy creando es para agregar datos pero solo me permite crear diez columnas cuando en realidad necesito 23 columnas para completar datos de mis empleados . Como puedo hacer ayudenme por favor ?
Les envío los parametros que estoy ingresando:
Dim i As Long
Private Sub Cb1Agregar_Click()
'Configuramos el Listbox
Me.ListBox1.ColumnCount = 10
Me.ListBox1.ColumnWidths = "20 pt;150 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt"
'Agregamos los Items
Me.ListBox1.List(i, 1) = TextBox2.Text
Me.ListBox1.List(i, 2) = TextBox3.Text
Me.ListBox1.List(i, 3) = TextBox4.Text
Me.ListBox1.List(i, 4) = TextBox5.Text
Me.ListBox1.List(i, 5) = TextBox6.Text
Me.ListBox1.List(i, 6) = TextBox7.Text
Me.ListBox1.List(i, 7) = TextBox8.Text
Me.ListBox1.List(i, 8) = TextBox9.Text
Me.ListBox1.List(i, 9) = TextBox10.Text
i = i + 1
'Limpiamos los TextBox
Me.TextBox1 = Empty
Me.TextBox2 = Empty
Me.TextBox3 = Empty
Me.TextBox4 = Empty
Me.TextBox5 = Empty
Me.TextBox6 = Empty
Me.TextBox7 = Empty
Me.TextBox8 = Empty
Me.TextBox9 = Empty
Me.TextBox10 = Empty
Me.TextBox1.SetFocus
End Sub
Mira estos otros temas del foro con problemas parecidos:
Listbox con más de 10 columnas http://www.necesitomas.com/listbox-mas-10-columnas
Listbox con 14 columnas http://www.necesitomas.com/listbox-14-columnas
------
Ya sé Excel, pero necesito más.
Hola Paco Gracias por responder,
Mi estimado, si los he visto pero no puedo adaptarlo a mi esquema no hayo la respuesta por eso es que me tomé la libertad de escribirte, de verdad me gustaría que me puedas dar una mano Paco, te estaré eternamente agradecido.
Como ya has comprobado, empleando .List(fila, columna) no te permite asignar más allá de 10 columnas.
Lo que sí puedes hacer es anotar los datos que necesites en un rango auxiliar, y luego utilizar ese rango auxiliar en la propiedad RowSource de la lista.
Así que crea una hoja auxiliar en tu libro, y ve anotando en cada fila los datos que necesites
Por ejemplo, algo así:
Private Sub EjemploCargaLista()
Const Hoja_auxiliar = "Auxiliar"
Const rangoauxiliar = "A1"
Dim i
With Worksheets(Hoja_auxiliar).Range(rangoauxiliar)
.CurrentRegion.Delete ' borramos el rango auxiliar
For i = 0 To LoQueSea
.Offset(i, 0) = TextBox1.Text
.Offset(i, 1) = TextBox2.Text
.Offset(i, 2) = TextBox3.Text
'... todos los controles, cada uno en su columna
Next
' definimos el origen de la lista
Me.ListBox1.RowSource = .CurrentRegion.Address
End With
End Sub
------
Ya sé Excel, pero necesito más.
Buen día Paco,
Gracias por tu apoyo. Mi estimado amigo creo que seria conveniente que puedas ver una pequeña muestra de lo que es el programa que estoy creando para que puedas darme una idea mucho mas clara de lo que me sugieres. por favor te lo agradecería enormemente puedas ayudarme con este problema, te envío el archivo vale.
Saludos.
Igual Excel no es la herramienta adecuada para una aplicación de bases de datos, quiero decir que con Access todo esto de dar de alta registros y eliminarlos lo tendrías más fácil. Bueno, pero eso es otro tema.
Espero que los datos de personas que aparecen en el archivo sean ficticios.
Te vuelvo a contestar lo mismo. Si rellenas los datos directamente en la lista sólo podrás tener 10 columnas
Así que en vez de eso, copia los datos que necesites para tu lista a una hoja auxiliar, y luego define la propiedad RowSource de la lista para que sea ese rango auxiliar. Con esto podrás tener más de 10 columnas.
------
Ya sé Excel, pero necesito más.
Si Paco Son Ficticios.
Ok entonces debo crear una hoja de excel auxiliar y copiar ahi los datos de las columnas que no entraron en la primera operacion, luego ingreso los parametros que enviaste en la rpsta anterior debajo de creando otro Private_sub Verdad?
Si me equivoco corrigeme por favor, lo intentaré, si pudieras desarrollar tu idea en el archivo que te envie y enviarmelo te agradeceria mucho pacomegía.
Perdón por entrar por medio.
El comentario que haces en la hoja excel sobre si el botón funciona o no... Creo que la razón es que el código para que funcionen los otros dos está en un módulo externo (module 1...), mientras que el código de tu botón está en el módulo de la hoja.
El código que introduces en una hoja únicamente funciona con los datos de esa hoja, y dan errores cuando quieres cambiar a otra.
Espero haberte ayudado en este punto.