Como preencher uma Caixa de Combinação com os dados de um Intervalo Nomeado no Excel?
Você pode especificar uma Caixa de Combinação (Controle ActiveX) com os dados de um determinado intervalo adicionando o intervalo nas propriedades ListFillRange da caixa de combinação. Mas você sabe como preencher uma Caixa de Combinação com os dados de um intervalo nomeado no Excel? Por exemplo, você nomeou um intervalo de células em sua planilha e agora precisa especificar esse nome de intervalo em uma Caixa de Combinação. Ao selecionar o nome do intervalo em uma caixa de combinação, todos os valores das células nesse intervalo nomeado serão automaticamente preenchidos em outra Caixa de Combinação. Este artigo apresentará um método VBA para resolver este problema.
Preencha a Caixa de Combinação com os dados de um intervalo nomeado usando código VBA
Preencha a Caixa de Combinação com os dados de um intervalo nomeado usando código VBA
Por favor, siga as instruções abaixo para preencher uma Caixa de Combinação com os dados de um intervalo nomeado no Excel.
1. Por favor, selecione todos os cabeçalhos (neste caso, eu selecionei A1:E1) na sua planilha e, em seguida, digite um nome na Caixa de Nomes conforme mostrado na captura de tela abaixo.
2. Selecione os dados de cada coluna, exceto o cabeçalho, e nomeie cada coluna separadamente na Caixa de Nomes. Veja a captura de tela:
Neste caso, nomeei os intervalos A2:A8, B2:B8, C2:C8, D2:D8 e E2:E8 como Data, Loja, Itens, Vendas e Dia da Semana, respectivamente.
3. Em seguida, insira uma Caixa de Combinação clicando em Desenvolvedor > Inserir > Caixa de Combinação (Controle ActiveX). Veja a captura de tela:
4. Repita a etapa 3 para inserir outra Caixa de Combinação na planilha.
5. Clique com o botão direito do mouse na guia da planilha e, em seguida, clique em Visualizar Código no menu de contexto. Veja a captura de tela:
6. Na janela Microsoft Visual Basic for Applications que se abrirá, copie e cole o seguinte código VBA na janela de Código.
Código VBA: Preencha a Caixa de Combinação com os dados de um intervalo nomeado
Private Sub ComboBox1_Change()
'Updated by Extendoffice 2018/1/30
Dim xRg As Range
Set xRg = Range(Me.ComboBox1.Text)
Me.ComboBox2.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim xRg As Range
Set xRg = Range("Headers")
Me.ComboBox1.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Nota: No código, ComboBox1 é o nome da caixa de combinação onde você listará todos os nomes de intervalo, e ComboBox2 é o nome da caixa de combinação onde os dados do intervalo nomeado especificado serão preenchidos. O “Cabeçalhos” é o nome do intervalo que você criou na etapa 1.
7. Desative o Modo de Design clicando em Desenvolvedor > Modo de Design.
8. Clique em qualquer célula na planilha para ativar o código. Clique no botão de seta na primeira caixa de combinação, você verá que todos os intervalos nomeados estão listados dentro. Veja a captura de tela:
Ao selecionar um intervalo nomeado na primeira caixa de combinação, os dados das células correspondentes serão preenchidos na segunda caixa de combinação conforme mostrado na captura de tela abaixo:
Crie facilmente uma lista suspensa com caixas de seleção no Excel:
O Adicionar caixas de seleção à lista suspensa utilitário do Kutools para Excel pode ajudá-lo a criar facilmente uma lista suspensa com caixas de seleção em um intervalo específico, planilha atual, pasta de trabalho atual ou todas as pastas de trabalho abertas com base em suas necessidades.
Baixe e experimente agora! (30-dia de teste grátis)
Artigos relacionados:
- Como copiar o valor da Caixa de Combinação para a célula ativa no Excel?
- Como exibir o formato de data na saída da caixa de combinação no Excel?
- Como evitar ou desativar a digitação em uma caixa de combinação no Excel?
- Como preencher uma caixa de combinação com dados específicos ao abrir a Pasta de Trabalho?
- Como preencher automaticamente outras células ao selecionar valores na lista suspensa do Excel?
Melhores Ferramentas de Produtividade para Office
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!