Se você deseja fazer um painel com um gráfico que altera seus dados de acordo com as opções selecionadas, você pode usar os eventos em VBA. Sim, isso pode ser feito. Não precisamos de nenhum menu suspenso, divisor ou caixa de combinação. Vamos tornar as células clicáveis e alterar os dados para criar um gráfico a partir da célula selecionada.
Siga as etapas abaixo para fazer gráficos dinâmicos no Excel que mudam de acordo com a seleção da célula.
Passo 1: Prepare os dados em uma planilha como fonte para o gráfico.
Aqui eu tenho alguns dados de amostra de diferentes regiões em uma planilha. Eu chamei de dados de origem.
Etapa 2: obtenha os dados de uma região por vez em uma planilha diferente.
- Agora insira uma nova folha. Nomeie-o apropriadamente. Eu o chamei de "Painel".
- Copie todos os meses em uma coluna. Escreva o nome de uma região adjacente ao mês.
- Agora queremos extrair dados da região na célula D1. Queremos que os dados mudem conforme a região muda em D1. Para isso, podemos usar a Pesquisa de duas vias.
Uma vez que meus dados de origem estão em A2: D8 na folha de dados de origem. Eu uso a fórmula abaixo.
=PROCV(C2, 'Dados de origem'! $ A $ 2: $ D $ 8,PARTIDA($ D $ 1, 'Dados de origem'! $ A $ 1: $ D $ 1,0)) |
Aqui, estamos usando a indexação de coluna dinâmica para VLOOKUP. Você pode ler sobre isso aqui.
- Insira um gráfico usando esses dados na folha do painel. Eu uso um gráfico de linhas simples. Oculte a origem do gráfico se não quiser exibi-los.
Agora, conforme você altera o nome da região em D1, o gráfico muda de acordo. A próxima etapa é alterar o nome da região em D1 conforme você seleciona uma opção da célula especificada.
etapa 3: Altere a região conforme você seleciona um nome de região no intervalo especificado.
- Escreva todos os nomes de região em um intervalo, eu os escrevo no intervalo A2: A4.
- Clique com o botão direito do mouse no nome da planilha do Dashboard e clique na opção "View Code" para entrar diretamente no Módulo de Planilha no VBE para que possamos usar o evento de planilha.
- Agora escreva o código abaixo no Editor VB.
Private Sub Worksheet_SelectionChange (ByVal Target As Range) If Not Intersect (Target, Range ("A2: A4")) Is Nothing Then Range ("A2: A4"). Interior.ColorIndex = xlColorIndexNone Dim region As Variant region = Target.value Em caso de erro GoTo err: Selecione Case region Case Is = "Central" Range ("D1"). Value = region Case Is = "East" Range ("D1"). Value = region Case Is = "West" Range ("D1 ") .value = region Case Else MsgBox" Opção inválida "End Select Target.Interior.ColorIndex = 8 End If err: End Sub
E está feito. Agora, sempre que você selecionar uma célula no intervalo A2: A4, seu valor será atribuído a D1 e os dados do gráfico serão alterados de acordo.
Eu expliquei como esse código funciona abaixo. Você pode entendê-lo e fazer alterações de acordo com sua necessidade. Forneci links para tópicos de ajuda que usei aqui neste exemplo. Portanto, verifique-os.
Como o código está funcionando?
Aqui usei o Evento do Excel. Usei um evento de planilha "SelectionChange" para acionar os eventos.
If Not Intersect (Target, Range ("A2: A4")) Is Nothing Then
Esta linha define o foco para o intervalo A2: A4 para que o evento SelectionChange só seja acionado quando a seleção estiver no intervalo A2: A4. O código entre If e End só será executado se a seleção estiver no intervalo A2: A4. Agora você pode configurá-lo de acordo com sua necessidade para tornar seu gráfico dinâmico.
Intervalo ("A2: A4"). Interior.ColorIndex = xlColorIndexNone
Esta linha define a cor do intervalo A2: A4 para nada.
region = Target.value On Error GoTo err:
Nas duas linhas acima, obtemos o valor das células selecionadas na região variável e ignoramos qualquer erro que ocorra. não use a linha "On Error GoTo err:" até ter certeza de que deseja ignorar qualquer erro que ocorra. Usei-o para evitar um erro ao selecionar várias células.
Selecione Case region Case Is = "Central" Range ("D1"). Value = region Case Is = "East" Range ("D1"). Value = region Case Is = "West" Range ("D1"). Value = region Case Else MsgBox "Opção inválida" End Select
Nas linhas acima, estamos usando excels Select Case Statement para definir o valor do intervalo D1.
Target.Interior.ColorIndex = 8 End If err: End Sub
Antes da instrução End If, alteramos a cor da opção selecionada para que seja destacada. Então, a instrução If termina e err: a tag começa. A instrução On Error saltará para esta tag se ocorrer algum erro durante a instrução select.
Baixe o arquivo de trabalho abaixo.
Eventos de gráficos incorporados usando VBA no Microsoft Excel| Os eventos de gráficos incorporados podem tornar seu gráfico mais interativo, dinâmico e útil do que os gráficos normais. Para habilitar os eventos nos gráficos nós …
Os eventos no Excel VBA |Existem sete tipos de eventos no Excel. Cada evento trata de um escopo diferente. O evento de aplicativo lida com o nível da pasta de trabalho. Livro de exercícios no nível das folhas. Planilha de eventos no nível de alcance.
Os eventos de planilha no Excel VBASubmeter comentários Causa Os eventos de planilha são realmente úteis quando você deseja que suas macros sejam executadas quando um evento especificado ocorrer na planilha.
Eventos de pasta de trabalho usando VBA no Microsoft Excel | Os eventos da pasta de trabalho funcionam em toda a pasta de trabalho. Como todas as planilhas fazem parte da pasta de trabalho, esses eventos também funcionam nelas.
Impedir que uma automacro / eventmacro seja executada usando VBA no Microsoft Excel| Para evitar a execução da macro auto_open, use a tecla shift.
Eventos de objeto de gráfico usando VBA no Microsoft Excel| Os gráficos são objetos complexos e há vários componentes que você anexa a eles. Para fazer os Eventos do Gráfico usamos o módulo Class.
Artigos populares:
50 atalhos do Excel para aumentar sua produtividade | Torne sua tarefa mais rápida. Esses 50 atalhos tornarão seu trabalho ainda mais rápido no Excel.
A função VLOOKUP no Excel | Esta é uma das funções mais usadas e populares do Excel, que é usada para pesquisar valores em diferentes intervalos e planilhas.
CONT.SE no Excel 2016 | Conte valores com condições usando esta função incrível. Você não precisa filtrar seus dados para contar um valor específico. A função Countif é essencial para preparar seu painel.
Como usar a função SUMIF no Excel | Esta é outra função essencial do painel. Isso ajuda você a somar valores em condições específicas.