Página 1 de 1

Combobox alimenta Combobox com lista dinâmica e sem duplicid

Enviado: 27 Jul 2020 às 14:58
por rpcn
Boa tarde.

Estou começando agora no VBA e estou enfrentando alguns problemas na solução de um problema.

Tenho a primeira combobox que é o período que foi realizado o abastecimento.
Essas datas, são equivalentes as planilhas quinzenais que tenho no arquivo.

Baseado na escolha dessa primeira combobox, eu quero ir até a planilha selecionada, pegar a lista de cooperados que realizaram abastecimento na quinzena, e alimentar a segunda combobox da planilha relatório, sem duplicidade.

Poderiam me ajudar?
Obrigado!

Re: Combobox alimenta Combobox com lista dinâmica e sem dupl

Enviado: 27 Jul 2020 às 15:58
por babdallas
Veja se ajuda.
Código: Selecionar todos
Private Sub SelecaoPeriodo_Change()
    Dim lngCont             As Long
    Dim wshSelecionada      As Worksheet
    Dim vrtCooperados       As Variant
    Dim dicCooperados       As Object
    
    Set dicCooperados = VBA.CreateObject("Scripting.Dictionary")
    
    SelecaoCooperado.Clear
    
    If SelecaoPeriodo = vbNullString Then Exit Sub
        
    Set wshSelecionada = ThisWorkbook.Sheets(SelecaoPeriodo.Value)
    
    With wshSelecionada
        vrtCooperados = .Range("F5:F" & .Cells(.Rows.Count, 6).End(xlUp).Row).Value2
        
        For lngCont = LBound(vrtCooperados, 1) To UBound(vrtCooperados, 1)
            If Not dicCooperados.Exists(vrtCooperados(lngCont, 1)) Then
                dicCooperados.Add vrtCooperados(lngCont, 1), vrtCooperados(lngCont, 1)
            End If
        Next lngCont
    End With
       
    SelecaoCooperado.List = dicCooperados.Items
End Sub

Combobox alimenta Combobox com lista dinâmica e sem duplicid

Enviado: 27 Jul 2020 às 16:30
por rpcn
Muito obrigado meu caro!!!!