O Excel é mesmo surpreendente. Neste artigo é demonstrada uma técnica simples, de executar mudanças em células ao passar o mouse, semelhante ao evento MouseHover. Veja mais artigos em https://www.guiadoexcel.com.br
A ideia original foi desenvolvida pelo MVP Jordan Goldmeier e descrita no canal Mr. Excel do MVP Bill Jellen em: https://youtu.be/04yl-dv68Qw. Este vídeo é de 2013 e solicitei permissão para divulgar no Guia do Excel a técnica e divulgar o seu conteúdo em português, então aqui estamos.
Veja o GIF abaixo, ele demonstra exatamente o que você aprenderá a fazer assistindo o vídeo no topo deste artigo, seguindo o tutorial ou ainda fazendo o download da planilha ao final do artigo.
Como você pode notar, ao passar com o mouse sobre as células do Excel o sistema altera o conteúdo da lista á direita, exibindo apenas os itens que fazem parte de uma determinada categoria.
O interessante é exatamente que este evento não existe no Excel por padrão, o evento MouseHover.
Para implementar este evento há outras formas, mas neste artigo demonstraremos a forma mais simples e prática de se simular este evento.
Este evento é VBA e permite que seja executada qualquer procedimento ao passar com o mouse sobre determinadas células.
Além disso, a técnica permite que sejam passados parâmetros pelo evento de passar o mouse sobre, abrindo inúmeras possibilidades de uso.
No exemplo demonstrado pelo MVP Jordan Goldmeier, a ideia é parecida com a nossa lista simples, mas no caso ele filtra os elementos de uma tabela periódica.
Esta planilha pode ser baixada no link disponibilizado no vídeo do MVP Bill Jellen, disponibilizado no topo deste artigo.
Outro exemplo de aplicação desta técnica é na alteração de dados em gráficos, infográficos ou dashboards. Veja um exemplo.
Perceba que são células, apesar de parecerem botões ou formas, e os eventos são disparados, como no exemplo anterior pelo evento de ao passar o mouse sobre.
Acredito que a esta altura você já deva estar convencido de que a técnica lhe possa ser útil, portanto, vamos ver agora como aplicá-la.
Para o nosso exemplo, nós faremos com que os dados do gráfico sejam alterados dinamicamente ao passar o mouse sobre as células.
O conteúdo desta célula será enviado para outra célula definida por parâmetro na própria célula e as fórmulas que usam esta célula destino como parâmetro serão afetadas.
Para isso siga os seguintes passos:
Public Function lfPreencher(ByVal lNome As String, ByVal lDestino As String) As String ActiveSheet.Range(lDestino) = lNome End Function
Este código é uma função do Excel, isso mesmo, uma função, e ela irá alterar o conteúdo da célula.
A função recebe dois parâmetros, lNome, que é o conteúdo da célula que será preenchida, e lDestino que é a célula que será preenchida, lembrando que isso é apenas um exemplo.
As UDF, funções definidas pelo usuário, não podem alterar conteúdos de outras células, mudar formatações, ou outras tarefas que você colocaria em uma SUB no VBA, mas, com esta técnica você consegue fazer qualquer modificação no Excel, assim como em um procedimento.
O Hiperlink é uma função do Excel que ao passar o mouse sobre ela, o ponteiro do mesmo muda automaticamente para a “mãozinha”, que é o ícone padrão de seguir o link.
Para que a nossa função funcione, nós colocamos dentro da função Hiperlink a chamada da função lfPreencher, somente isso, e o SEERRO para evitar que exiba um erro ao executar. Veja o cenário para entender a função.
Agora você consegue ver que na função, é passado J2=”São paulo”, como primeiro parâmetro da função lfPreencher, ou seja, este é o conteúdo que será passado para a célula, que é o segundo parâmetro, a célula N2, que já vemos preenchida com São Paulo também.
A função Hiperlink recebe esta função como primeiro parâmetro, ou seja, link a ser seguido, e no segundo a célula J2, que é o conteúdo da célula São Paulo na lista de dados.
Para concluir, veja que a SEERRO recebe J2 também, ou seja, São Paulo, para evitar que ela fique com erro ao dar o Enter.
Por fim, acredito que o uso deste evento de ao mover o mouse executar uma ação no Excel poderá lhe abrir várias possibilidades e espero que lhe ajude na sua vida profissional. Veja mais artigos sobre VBA: Guia do Excel VBA
Abraço
Marcos Rieper
Sou autor do Guia do Excel com mais de 500 artigos publicados e consultor com centenas de aplicações instaladas.
Graduado em Administração de empresas e Análise de sistemas, busco aliar os conhecimentos de negócios e técnicos no ensino e desenvolvimento de soluções em Excel.