Página 2 de 2

Re: VBA - Preenchendo um listbox com mais de 10 colunas

Enviado: Dom Mar 04, 2018 10:47 am
por fbzam
Bom dia Basole
Ele retorna o seguinte erro:
Não foi possível definir a propriedade list. Índice de matriz de propriedade inválido.
devo estar esquecendo de algum comando anterior

Re: VBA - Preenchendo um listbox com mais de 10 colunas

Enviado: Ter Mar 06, 2018 12:15 am
por Basole
Tem que acrescentar addItem

Código: Selecionar todos

With ListBox1
.AddItem
 .List(.ListCount - 1, 0) = TextBox1.Text
 .List(.ListCount - 1, 2) = comboBox1.Text
 .List(.ListCount - 1, 3) = TextBox2.Text
 .List(.ListCount - 1, 4) = TextBox3.Text
 .List(.ListCount - 1, 5) = comboBox2.Text
 .List(.ListCount - 1, 6) = TextBox4.Text
 'List(.ListCount - 1, 7)  .....
 ' ............. .. . . . . . . . . . . .  . .  . 
End With

Re: VBA - Preenchendo um listbox com mais de 10 colunas

Enviado: Ter Mar 06, 2018 8:58 am
por fbzam
Pois é, mas ai quando ele chegou no item 10 ele parou só aceita até o 9 (ou 10ª coluna) com o additem

Re: VBA - Preenchendo um listbox com mais de 10 colunas

Enviado: Ter Mar 06, 2018 9:27 am
por Basole
Faz o seguinte, dimensiona a area de dados do listbox.

Por exemplo no evento initialize (configure o Listbox):

Código: Selecionar todos

Private Sub UserForm_Initialize()
    Dim arrLb() As Variant
    
    ReDim arrLb(0, 20)  ' onde 20 é o nº de colunas
    
    With ListBox1
        .Rowsource = ""
        .List = arrLb
        .ColumnCount = 20
        .ColumnWidths = "50 pt; 80 pt; 100 pt;" '..continue aqui até 20ª coluna"
        .Clear      
    End With 
        
End Sub
E se quiser popular o listbox com dados da planilha, abaixo da linha .Clear, acrescente esta linha, por exemplo:
.List = Range("A2:M40").Value2