Como personalizar menus e barras de menu no Excel
Especialista em Excel

Objetivo: Como personalizar menus e barras de menu no Excel.
Neste artigo é demonstrado como criar um menu pop-up, inserindo ele no menu de uma planilha ao clicar com o botão direito em uma célula, chamando procedimentos em VBA que você tenha armazenado, tornando mais profissional a sua aplicação.
No nosso exemplo criamos um botão que facilita a navegação entre as planilhas de um arquivo Excel, fazendo com que o mesmo retorne ao Menu quando clicado.
Para isso vamos então á criação:
1. Abra o Visual Basic na guia Desenvolvedor ou pressionando as teclas de atalho ALT+F11
2. Na sua planilha insira um novo módulo, clicando em Inserir->Módulo
3. No módulo criado digite o seguinte código:
Sub lsAdicionarMenu()
'Limpa os comandos adicionados
Application.CommandBars("cell").Reset
'Adiciona um comando
With Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton, before:=1, temporary:=True)
'Descrição do comando
.Caption = "Voltar para o Menu"
'Ação realizada ao selecionar esta opção
.OnAction = "'" & ThisWorkbook.Name & "'!" & "lsMenu"
'Imagem que irá ser apresentada no menu
.FaceId = 1016
'Descrição
.Tag = "Voltar para o Menu"
.DescriptionText = "Voltar ao menu principal!"
End With
'Segundo menu com botões
Set MenuItem = Application.CommandBars("Cell").Controls.Add(Type:=msoControlPopup, before:=2)
With MenuItem
.Caption = "Menu especial"
With .Controls.Add(Type:=msoControlButton)
.Caption = "Cotação"
.FaceId = 71
.OnAction = "'" & ThisWorkbook.Name & "'!" & "lsCotacao"
End With
With .Controls.Add(Type:=msoControlButton)
.Caption = "Lista de compras"
.FaceId = 72
.OnAction = "'" & ThisWorkbook.Name & "'!" & "lsListaCompras"
End With
End With
End Sub
Sub lsMenu()
'Seleciona a planilha Menu
Worksheets("Menu").Select
Worksheets("Menu").Range("a1").Select
End Sub
Sub lsCotacao()
'Seleciona a planilha Menu
Worksheets("Cotação").Select
Worksheets("Cotação").Range("a1").Select
End Sub
Sub lsListaCompras()
'Seleciona a planilha Menu
Worksheets("Lista de compras").Select
Worksheets("Lista de compras").Range("a1").Select
End Sub
Sub lsRemoverMenu()
'Limpa todos os comandos adicionados
Application.CommandBars("cell").Reset
End Sub
4. Agora clique na pasta Microsoft Excel Objetos e selecione o componente EstaPasta_de_trabalho e digite o seguinte código:
'Ao ativar o arquivo adiciona o menu
Private Sub Workbook_Activate()
lsAdicionarMenu
End Sub
'Ao desativar o arquivo remove o menu
Private Sub Workbook_Deactivate()
lsRemoverMenu
End Sub
5. Com os códigos inseridos ao clicar com o botão direito em uma célula do Excel o menu terá uma nova opção, "Voltar para o menu", conforme criamos e outra com um menu especial com outras duas abas, note que os números 1 e 2 são imagens também.
6. Ao clicar na opção que criamos o procedimento que está associado ao menu e a ação é tomada, como por exemplo a navegação entre as abas como é o caso.
7. Para alterar a imagem do menu você pode alterar o número FaceId, veja o código correspondente nas listas de imagens abaixo:
Veja o nosso arquivo de exemplo clicando no botão abaixo:
Abraço
Marcos Rieper
Principais recursos
Confira o que este material oferece para você.
Perguntas frequentes
O material é realmente gratuito?
Sim. O acesso é gratuito e não exige cadastro.
Preciso ter o Excel instalado?
Recomendamos o Excel 2013 ou superior para todos os recursos.
Como faço para receber atualizações?
As atualizações são automáticas dentro da própria planilha.
Funciona no Excel do Mac?
Sim, funciona no Excel para Windows e para Mac.
Funciona no celular?
É possível visualizar no app do Excel; a edição completa é no computador.
Planilhas relacionadas
Planilha de Fluxo de Caixa
R$ 89,90
Controle de Estoque
R$ 69,90
Planilha Financeira Empresarial
R$ 79,90
Dashboard Financeiro no Excel
R$ 49,90







