Ir ao conteúdo

Excel Filtro com caixa de seleção na listbox


Ir à solução Resolvido por Midori,

Posts recomendados

Postado

Estou com dificuldade em encontrar um filtro que venha a se adequar ao meu projeto. Se alguém tiver alguma ideia sobre como fazer este filtro eu agradesço.

Quero filtrar uma listbox com caixa de seleção. Deixei um print de exemplo em anexo.

Resumindo a linha da listbox que vai filtrar os dados é a 3. São 4 opções de caixa de seleção e gostaria que a opção ativo já inicia-se ativa com o formulário filtrando.

Imagepipe_40.jpg

  • Solução
Postado

@Edgar beleza Uma forma de fazer isso é com AdvancedFilter. Assim fica simples aplicar os critérios para criar os dados filtrados em numa tabela auxiliar para carregar o listbox. Crie uma nova planila com o nome Filtro e copie o código,

 

Sub AtualizaFiltro()
    Dim Tabela          As Range
    Dim AreaFiltrada    As Range
    Dim PlanFiltro      As Worksheet
    Dim Controle        As Control
    
    Set Tabela = ThisWorkbook.Sheets("Plan1").[A1].CurrentRegion
    Set PlanFiltro = ThisWorkbook.Sheets("Filtro")
    Set AreaFiltrada = PlanFiltro.[A10].CurrentRegion
    
    For Each Controle In Frame1.Controls
        If Controle.Value = True Then
            PlanFiltro.[C2].Value = Controle.Caption
            AreaFiltrada.Clear
            
            Call Tabela.AdvancedFilter( _
                Action:=xlFilterCopy, _
                CriteriaRange:=PlanFiltro.[A1].CurrentRegion, _
                CopyToRange:=AreaFiltrada(1, 1))
                
            ListBox1.RowSource = "Filtro!" & AreaFiltrada.Address
            Exit For
        End If
    Next Controle
End Sub

Private Sub UserForm_Click()
    Call AtualizaFiltro
End Sub

Private Sub UserForm_Initialize()
    ListBox1.ColumnCount = 3
    ListBox1.RowSource = "Plan1!A2:C8"
End Sub

 

A planilha Filtro deve ter estes campos,

filtro.png.78535db07e2cd86f142ee6a5b3f0108e.png

 

Faça um teste. O evento está no Click do Form e filtra apenas a primeira seleção de checkbox que encontrar, mas você pode editar o código para acrescentar mais situações. Os critérios do filtro do TextBox também devem ser registrados na planilha Filtro (o nome na célula B2, etc).

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!