Skip to main content

Como criar listas suspensas dinâmicas em cascata no Excel?

Author: Siluvia Last Modified: 2025-06-04

Você pode saber como criar uma lista suspensa de validação em cascata no Excel. No entanto, como criar listas suspensas dinâmicas em cascata no Excel? Este artigo apresenta um método VBA para realizar isso.

Criar listas suspensas dinâmicas em cascata com código VBA


Criar listas suspensas dinâmicas em cascata com código VBA

Como mostrado na captura de tela abaixo, você precisa criar uma lista principal que contenha os valores únicos da coluna Bebida e exibir todos os valores correspondentes na segunda lista suspensa com base na seleção na lista principal. O seguinte código VBA ajuda você a alcançar isso. Por favor, siga as instruções abaixo.

dynamic cascading list boxes

1. Primeiro, você precisa extrair todos os valores únicos da coluna Bebida. Selecione uma célula em branco, insira a fórmula matricial =SEERRO(ÍNDICE($A$2:$A$11; CORRESP(0;CONT.SE($J$1:J1; $A$2:$A$11); 0));"") na Barra de Fórmulas e pressione Ctrl + Shift + Enter. Em seguida, arraste a Alça de Preenchimento para obter todos os valores únicos. Veja a captura de tela:

list all unique values with formula

Observação: Na fórmula, $A$2:$A$11 é o intervalo do qual você extrairá os valores únicos. J1 é a célula acima onde sua fórmula está localizada.

Dica: Se a fórmula for muito difícil de lembrar e manipular, a ferramenta Selecionar Duplicados & Células Únicas do Kutools para Excel será uma boa escolha para você extrair rapidamente todos os valores únicos de uma coluna.

Por favor, selecione a coluna que contém os valores únicos que você deseja extrair. Em seguida, habilite a utilidade clicando em Kutools > Selecionar > Selecionar Duplicados & Células Únicas. Na caixa de diálogo Selecionar Duplicados & Células Únicas, selecione a opção Valores Únicos (Incluir a primeira duplicata) e clique no botão OK. Todos os valores únicos serão selecionados na coluna. Copie e cole-os em um novo local. Veja a captura de tela:

select unique values with kutools

Kutools para Excel: com mais de 200 complementos práticos para o Excel, grátis para experimentar sem limitações por 60 dias. Baixe e experimente agora gratuitamente!

2. Insira duas listas suspensas separadamente clicando em Desenvolvedor > Inserir > Caixa de Listagem (Controle ActiveX). Veja a captura de tela:

click List Box from Developer tab

3. Clique com o botão direito na caixa de listagem principal e selecione Propriedades no menu de contexto. Na caixa de diálogo Propriedades, altere o campo (Nome) para Bebida ou outro nome conforme necessário, insira o intervalo de células que contém os valores únicos extraídos no campo Intervalo de Preenchimento da Lista e feche a caixa de diálogo.

specify the options in the Properties pane

4. Repita a etapa 3 para alterar o campo (Nome) da segunda caixa de listagem para Item na caixa de diálogo Propriedades.

5. Clique com o botão direito na guia da planilha e selecione Visualizar Código no menu ao clicar com o botão direito. Em seguida, copie o código VBA abaixo na janela de Código. Veja a captura de tela:

Código VBA: Criar listas suspensas dinâmicas em cascata no Excel

Dim xPreStr As String
Private Sub Drink_Click()
'Update by Extendoffice 2018/06/04
    Dim I, xRows As Long
    Dim xRg As Range
    Dim xRegStr As String
    Application.ScreenUpdating = False
    xRegStr = Me.Drink.Text
    Set xRg = Range("A2:A11")
    xRows = xRg.Rows.Count
    If xRegStr <> xPreStr Then
    Me.Item.Clear
   'Me.OtherListBoxName.Clear
    Set xRg = xRg(1)
    For I = 1 To xRows
        If xRg.Offset(I - 1).Value = xRegStr Then
            Me.Item.AddItem xRg.Offset(I - 1, 1).Value
            'Me.OtherListBoxName.AddItem xRg.Offset(I - 1, 2).Value
        End If
    Next
    xPreStr = xRegStr
    End If
    Application.ScreenUpdating = True
End Sub

Notas: No código, Bebida e Item são os nomes das duas caixas de listagem, altere-os para seus próprios nomes.

click View Code to pate the code into the module

6. Pressione as teclas Alt + Q para fechar a janela Microsoft Visual Basic for Applications.

7. Desative o Modo de Design clicando em Desenvolvedor > Modo de Design.

A partir de agora, ao selecionar qualquer tipo de bebida, como Café na caixa de listagem principal, todos os itens de café serão exibidos na segunda. Selecionar Chá ou Vinho exibirá apenas os itens de chá ou vinho na segunda caixa de listagem. Veja a captura de tela:

dynamic cascading list boxes are created



Artigos relacionados:

Melhores Ferramentas de Produtividade para Office

🤖 Assistente AI do KUTOOLS: Revolucione a análise de dados com base em: Execução Inteligente | Gerar Código | Criar Fórmulas Personalizadas | Analisar Dados e Gerar Gráficos | Invocar Funções Aprimoradas
Recursos Populares: Encontrar, Destacar ou Marcar Duplicatas | Excluir Linhas em Branco | Combinar Colunas ou Endereço sem Perder Dados | Arredondar...
Super PROC: PROC com Múltiplos Critérios | PROC com Múltiplos Valores | Procura em várias planilhas | Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente uma Lista Suspensa | Lista Suspensa Dependente | Lista Suspensa com Múltipla Seleção...
Gerenciador de Colunas: Adicionar um Número Específico de Colunas | Mover Colunas | Alternar Estado de Visibilidade das Colunas Ocultas | Comparar Intervalo & Colunas...
Recursos em Destaque: Grade de foco | Visualização de Design | Barra de fórmulas aprimorada | Gerenciador de Pasta de trabalho & Planilha | Biblioteca de AutoTexto | Selecionador de Data | Mesclar Dados | Criptografar/Descriptografar Células | Enviar Email por Lista | Super Filtro | Filtro Especial (filtrar negrito/itálico/tachado...)...
Top15 Conjuntos de Ferramentas:12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...) | Mais de50 Tipos de Gráficos (Gráfico de Gantt, ...) | Mais de40 Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...) |19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem a partir do Caminho, ...) |12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...) |7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ... e muito mais

Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...


O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho

  • Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
  • Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!