Página 1 de 1
Adicionar itens a uma Combobox a partir de uma tabela
Enviado: 13 Out 2017 às 18:29
por JCabral
Boa noite
Mais uma vez a pedir uma ajuda
Tenho uma base de dados na aba "DPL_N" e depois de abrir a USERFORM1 filtro essa base de dados pelo campo 16, através da Combobox11.
Depois de filtrar a base de dados precisava de adicionar apenas os dados da Coluna1 na ComboBox10, depois do filtro aplicado.
Tentei utilizar o mesmo tipo de raciocínio que fiz para adicionar os itens da Combobox11 mas dá-me erro, o que estou a fazer de errado?
Obrigado
Jorge Cabral
Re: Adicionar itens a uma Combobox a partir de uma tabela
Enviado: 13 Out 2017 às 22:08
por osvaldomp
substitua esta linha
Código: Selecionar todos'Me.ComboBox10.List = WST.ListObjects("bd_DPL_N").ListColumns(1).DataBodyRange.Value
por estas
Código: Selecionar todosDim rng As Range
For Each rng In Sheets("DPL_N").Range("A2:A" & Sheets("DPL_N").Cells(Rows.Count, 1).End(3).Row).SpecialCells(xlCellTypeVisible)
Me.ComboBox10.AddItem rng.Value
Next rng
Adicionar itens a uma Combobox a partir de uma tabela
Enviado: 14 Out 2017 às 21:17
por JCabral
Osvaldomp
Funciona na perfeição.
Só mais uma pequena duvida, não estou conseguindo fazer o display correto na TextBox2 do valor a que na "bd_DPL_N", Coluna 3, corresponde o valor escolhido na Combobox10, tem como fazer isso em VBA, no Excel era algo do tipo "=PROCV(C3;bd_DPL_N;3;0)"
Mais uma vez Obrigado
Re: Adicionar itens a uma Combobox a partir de uma tabela
Enviado: 14 Out 2017 às 23:31
por babdallas
Substitua o evento change da combobox 10 por este codigo:
Código: Selecionar todosPrivate Sub ComboBox10_Change()
Dim lngLin As Long
Dim lobDOL_N As ListObject
Dim ltcCol As ListColumn
Set lobDOL_N = DPL_N.ListObjects("bd_DPL_N")
Set ltcCol = lobDOL_N.ListColumns(1)
With Application.WorksheetFunction
lngLin = .Match(CLng(ComboBox10.Value), ltcCol.DataBodyRange, 0)
End With
TextBox1.Value = ComboBox10.Value
TextBox2.Value = lobDOL_N.DataBodyRange(lngLin, 3).Value
TextBox3.Value = ComboBox10.ListIndex
End Sub
Adicionar itens a uma Combobox a partir de uma tabela
Enviado: 14 Out 2017 às 23:49
por JCabral
Babdallas
Funciona na perfeição.
Só fica uma pequena duvida, entre este seu método e o método DataBodyRange.Find qual é o mais rápido?
Obrigado mais uma vez
Re: Adicionar itens a uma Combobox a partir de uma tabela
Enviado: 15 Out 2017 às 00:00
por babdallas
Acredito que o match (Corresp) seja mais rápido, mas como são poucos dados, a diferença é imperceptível.