É possivel concaten...
 
Notifications
Clear all

É possivel concatenar 2 intervalos distintos em uma Listbox?

8 Posts
2 Usuários
0 Reactions
1,793 Visualizações
(@wolneypk)
Posts: 188
Reputable Member
Topic starter
 

Digamos que eu tenho a Listbox1 e quero através da função Rowsource ques essa Listbox me apresente dados de dois intervalos distintos.
Por exemplo: O intervalo A12:A26 E o intervalo C2:C23 todos na mesma ListBox.
Isso é possivel?
Tentei de várias maneiras sem sucesso...

Alguem saberia responder?

 
Postado : 30/04/2013 4:45 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Você está falando de um ListBox de um Form ou não?

Veja um exemplo ActiveX

Veja um modelo baseado em Lisbox em Forms, baixe o arquivo em:
http://www.sendspace.com/file/s6vc8y

Att

 
Postado : 30/04/2013 5:02 pm
(@wolneypk)
Posts: 188
Reputable Member
Topic starter
 

Boa Noite Alexandre!
É em um Form cara.

Entendi seu exemplo, só que eu queria que os dados ficasse organizados um logo abaixo do outro e não divididos em colunas dentro da ListBox
Exemplo:
A1:A13
e logo na sequencia
C13:C31

Endenteu?

 
Postado : 30/04/2013 5:41 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!

Seria isso...
http://www.sendspace.com/file/b7r7gc

Att

 
Postado : 30/04/2013 6:06 pm
(@wolneypk)
Posts: 188
Reputable Member
Topic starter
 

Não cara... Ainda não é bem isso.

Eu não quero uma listbox dividida em colunas.
Quero uma listbox com uma única coluna que reuna valores de 2 ou 3 lugares diferentes.

Imagine o seguinte:
Tenho a Plan1
Tenho as seguintes células com os seguintes valores:

A1 = João
A2 = Pedro
A3 = Carlos

X2 = Maria
X3 = Carla
X4 = Ana

Levando em consideração que temos aqui dois intervalos distintos A1:A3 e X2:X4 certo?
Eu quero, através da função Rowsource, juntar esses dois intervalos em uma só ListBox, para que fique assim

João
Pedro
Carlos
Maria
Carla
Ana

Entendeu?
Minha dificuldade está sendo em concatenar esses dois intervalos.
Tens alguma idéia?

 
Postado : 30/04/2013 6:46 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Creio que por rowSource diretamente nao.
Mas experimente assim:

Private Sub UserForm_Initialize()
Dim rng As Range, i As Integer, d As Range
Set rng = Sheets("Sheet1").Range("A2:A3, B9:b10, C6:C7")

With ListBox1
    .Clear
i = 0
For Each d In rng
    .AddItem
    .List(i, 0) = d.Value
    i = i + 1
Next
End With
End Sub
 
Postado : 01/05/2013 5:21 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Deve ser isso...
http://www.sendspace.com/file/hlg6sh

Att

 
Postado : 01/05/2013 6:31 am
(@wolneypk)
Posts: 188
Reputable Member
Topic starter
 

Perfeito!
Os dois exemplos cairam como uma luva!

Muito Obrigado aos dois amigos!
Sempre prontos á ajudar.

Um forte abraço

 
Postado : 01/05/2013 8:33 pm