Usuário com melhor resposta
Como preencher, via vba, uma listbox em várias colunas, com dados da planilha, mas sem saber previamente quantas linhas e quantas colunas estão preenchidas na planilha?

Pergunta
-
Preciso de um código único para preencher a listbox no formulário, independentemente de quantas linhas e quantas colunas estão preenchidas na planilha.
Tenho um formulário com um botão e uma listbox.
- Editado diniabr2012 quinta-feira, 3 de janeiro de 2013 20:05
Respostas
-
Private Sub UserForm_Initialize() With Sheets("Plan1").UsedRange ListBox1.ColumnCount = .Columns.Count ListBox1.RowSource = .Address End With End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta diniabr2012 quinta-feira, 3 de janeiro de 2013 22:25
Todas as Respostas
-
Não entendi quando disse que independe quantas colunas tem. Está querendo uma ListBox que tenha mais de uma coluna? Se for uma coluna, veja como ficaria:
Private Sub UserForm_Initialize() Dim lLast As Long Dim lRow As Long With Sheets("Plan1") lLast = .Cells(.Rows.Count, "A").End(xlUp).Row 'Considerando que a linha 1 é cabeçalho: For lRow = 2 To lLast ListBox1.AddItem .Cells(lRow, "A") Next lRow End With End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
-
A listbox terá mais de uma coluna.
Quando digo independente é que o mesmo código deve dar conta de diversos intervalos:
A1:K28, por exemplo ou
L12:N24, por exemplo ou
I7:Z6, por exemplo ou
H89:Y111, por exemplo
Preciso de um código genérico que seja válido para qualquer intervalo de linhas e colunas.
-
Private Sub UserForm_Initialize() With Sheets("Plan1").UsedRange ListBox1.ColumnCount = .Columns.Count ListBox1.RowSource = .Address End With End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta diniabr2012 quinta-feira, 3 de janeiro de 2013 22:25
-
-
-
Private Sub UserForm_Initialize() With Sheets("Plan1").UsedRange ListBox1.ColumnCount = .Columns.Count ListBox1.RowSource = .Address End With End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
-
-
-
Boa noite
Eu tenho um problema parecido mas a forma de inserir no listbox teria que ser atraves de caixas de texto e combobox, as informações são toda hora mudadas e posso lançar nas vendas só o pagamento, mudar o status de se foi entregue ou não, eu usava uma listview mas na ultima atualização do office ele não esta mais funcionando.
Tem como fazer o lançamento com 24 colunas sem lançar os dados numa planilha