Como preencher a caixa de combinação com dados de intervalo nomeado no Excel?
Você pode especificar uma caixa de combinação (controle ActiveX) com dados de um determinado intervalo, adicionando o intervalo às propriedades ListFillRange da caixa de combinação. Mas você sabe como preencher uma caixa de combinação com 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 de células neste intervalo nomeado serão preenchidos em outra caixa de combinação automaticamente. Este artigo apresentará um método VBA para resolver esse problema.
Preencher a caixa de combinação com dados de um intervalo nomeado com código VBA
Preencher a caixa de combinação com dados de um intervalo nomeado com código VBA
Faça o seguinte para preencher a caixa de combinação com dados de um intervalo nomeado no Excel.
1. Selecione os cabeçalhos inteiros (neste caso, eu seleciono A1: E1) em sua planilha e, em seguida, digite um nome no nome Box como a imagem abaixo mostrada.
2. Selecione os dados de cada coluna, exceto seu cabeçalho e, em seguida, nomeie a coluna separadamente no nome Box. Veja a imagem:
Nesse caso, nomeei o intervalo A2: A8, B2: B8, C2: C8, D2: D8 e E2: E8 como Data, Loja, Itens, Vendas e Dia da semana separadamente.
3. Em seguida, insira uma caixa de combinação clicando em Developer > inserção > Caixa de combinação (controle ActiveX). Veja a imagem:
4. Repita a etapa 3 para inserir outra caixa de combinação na planilha.
5. Clique com o botão direito na guia da planilha e clique em Ver código no menu de contexto. Veja a imagem:
6. Na abertura Microsoft Visual Basic para Aplicações janela, copie e cole o código VBA abaixo na janela Código.
Código VBA: preencher a caixa de combinação com 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
Note: No código, ComboBox1 é o nome da caixa de combinação na qual você listará todos os nomes de intervalos dentro, e ComboBox2 é o nome da caixa de combinação onde os dados do intervalo nomeado especificado serão preenchidos dentro. Os ”cabeçalhos” são o nome do intervalo que você criou na etapa 1.
7. Desative o modo de design clicando em Developer > Modo de design.
8. Clique em qualquer célula da planilha para ativar o código. Clique no botão de seta na primeira caixa de combinação para ver que todos os intervalos nomeados estão listados dentro. Veja a imagem:
Ao selecionar um intervalo nomeado na primeira caixa de combinação, os dados da célula correspondente serão preenchidos na segunda caixa de combinação, conforme a captura de tela mostrada abaixo:
Crie facilmente uma lista suspensa com caixas de seleção no Excel:
A Lista suspensa com caixas de seleção utilidade de Kutools for Excel pode ajudá-lo a criar facilmente uma lista suspensa com caixas de seleção em um intervalo especificado, planilha atual, pasta de trabalho atual ou todas as pastas de trabalho abertas com base em suas necessidades.
Baixe e experimente agora! (trilha gratuita de 30 dias)
Artigos relacionados:
- Como copiar o valor da caixa de combinação para uma célula ativa no Excel?
- Como exibir o formato de data na saída da caixa de combinação no Excel?
- Como prevenir ou desabilitar a digitação em uma combo box no Excel?
- Como preencher uma caixa de combinação com dados especificados na pasta de trabalho aberta?
- Como preencher automaticamente outras células ao selecionar valores na lista suspensa do Excel?
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!