Lar Mídia social Como personalizar os menus de atalho do Excel 2016 no VBA - dummies

Como personalizar os menus de atalho do Excel 2016 no VBA - dummies

Índice:

Vídeo: [Excel VBA] Botão para Mudar de Planilha 2025

Vídeo: [Excel VBA] Botão para Mudar de Planilha 2025
Anonim

Antes do Excel 2007, os programadores VBA usaram o objeto CommandBar para criar menus personalizados, barras de ferramentas personalizadas e menus de atalho personalizados (clique com o botão direito do mouse). Começando com o Excel 2007, o objeto CommandBar está em uma posição bastante estranha. Se você escrever código para personalizar um menu ou uma barra de ferramentas, o Excel intercepta esse código e ignora muitos de seus comandos.

Em vez de exibir seu aprimoramento de interface bem pensado, o Excel 2007 (como versões posteriores) simplesmente despeja seus menus personalizados e barras de ferramentas em uma guia de fita abrangente chamada Add-Ins.

As personalizações do menu e da barra de ferramentas terminam nos Add-Ins → Comandos do menu ou o grupo Add-Ins → Custom Toolbars. Mas a personalização de menus de atalho (que também usa o objeto CommandBar) ainda funciona como sempre - bem, tipo de.

Bottom line? O objeto CommandBar já não é muito útil, mas continua a ser a única maneira de personalizar menus de atalho.

Adicionando um novo item ao menu de atalho da célula

Abaixo, você encontrará o código de exemplo que adiciona um novo item ao menu de atalho que aparece quando você clica com o botão direito do mouse em uma célula. Você deve ser capaz de adaptar esses exemplos às suas necessidades.

Você pode aprimorar o utilitário Change Case um pouco, tornando-o disponível no menu de atalhos da célula.

O procedimento AddToShortcut adiciona um novo item de menu ao menu de atalhos de célula. Você pode adaptá-lo para apontar para suas próprias macros alterando as propriedades Legenda e OnAction do objeto chamado NewControl.

Sub AddToShortCut () Dim Bar como CommandBar Dim NewControl como CommandBarButton DeleteFromShortcut Set Bar = Application. CommandBars ("Cell") Defina NewControl = Barra. Controles. Adicionar _ (Tipo: = msoControlButton, ID: = 1, _ temporário: = Verdadeiro) Com NewControl. Legenda = "e caso de mudança". OnAction = "ChangeCase". Style = msoButtonIconAndCaption End With End Sub

Quando você modifica um menu de atalho, essa modificação permanece em vigor até você reiniciar o Excel. Em outras palavras, os menus de atalho modificados não são redefinidos quando você fecha o caderno de trabalho que contém o código VBA. Portanto, se você escrever código para modificar um menu de atalho, quase sempre escreve um código para reverter o efeito de sua modificação.

O procedimento DeleteFromShortcut remove o novo item de menu do menu de atalhos da célula:

Sub DeleteFromShortcut () On Error Resume Next Application. CommandBars ("Cell"). Controles _ ("& Change Case"). Delete End Sub

Isso mostra como o novo item de menu é exibido depois de clicar com o botão direito do mouse em uma célula.

O menu de atalho da célula que mostra um item de menu personalizado: Mudar caso.

O primeiro comando real após a declaração de algumas variáveis ​​chama o procedimento DeleteFromShortcut. Esta declaração garante que apenas um item de menu Change Case aparece no menu de atalho do celular. Tente comentar essa linha (coloque um apóstrofo no início da linha) e execute o procedimento algumas vezes - mas não se deixe levar!

Clique com o botão direito do mouse em uma célula, e você pode ver várias instâncias do item de menu Change Case. Se livrar de todas as entradas executando DeleteFromShortcut várias vezes (uma vez por cada item de menu extra).

Finalmente, você precisa de uma maneira de adicionar o item do menu de atalho quando a pasta de trabalho for aberta e excluir o item do menu quando a pasta de trabalho for fechada. Fazer isso é fácil. Basta adicionar esses dois procedimentos de evento ao módulo de código ThisWorkbook:

Private Sub Workbook_Open () Call AddToShortCut End Sub Private Sub Workbook_BeforeClose (Cancelar como booleano) Call DeleteFromShortcut End Sub

O procedimento Workbook_Open é executado quando o livro está aberto, e o procedimento Workbook_BeforeClose é executado antes que o livro esteja fechado. O que o médico ordenou.

O que é diferente no Excel 2013 e Excel 2016?

Se você usou o VBA para trabalhar com menus de atalho no Excel 2007 ou anterior, você precisa estar ciente de uma mudança significativa.

No passado, se o seu código modificasse um menu de atalho, essa modificação estava em vigor para todas as pastas de trabalho. Por exemplo, se você adicionou um novo item ao menu do botão direito da célula, esse novo item apareceria quando você clicou com o botão direito do mouse em uma célula em qualquer pasta de trabalho (além de outras pastas de trabalho que você abrirá mais tarde). Em outras palavras, as modificações no menu de atalho foram feitas no nível de aplicação .

Excel 2013 e Excel 2016 usam uma única interface de documento, e isso afeta os menus de atalho. As mudanças que você faz nos menus de atalho afetam apenas a janela da pasta de trabalho ativa. Quando você executa o código que modifica o menu de atalho, o menu de atalho para janelas diferentes da janela ativa não será alterado. Esta é uma saída radical de como as coisas costumavam funcionar.

Outro toque: se o usuário abrir uma pasta de trabalho (ou criar uma nova pasta de trabalho) quando a janela ativa exibe o menu de atalho modificado, a nova pasta de trabalho também exibe o menu de atalho modificado. Em outras palavras, as novas janelas exibem os mesmos menus de atalho que a janela que estava ativa quando as novas janelas foram abertas.

Linha inferior: no passado, se você abriu uma pasta de trabalho ou adicionasse esses menus de atalho modificados, você poderia ter certeza de que os menus de atalho modificados estarão disponíveis em todas as pastas de trabalho. Você não tem mais essa garantia.

Como personalizar os menus de atalho do Excel 2016 no VBA - dummies

Escolha dos editores

Como o Colégio dos Cardeais Escolhe um Novo Papa - manequins

Como o Colégio dos Cardeais Escolhe um Novo Papa - manequins

Quando um papa morre no cargo ou renuncia , como fez o Papa Bento XVI no início de 2013, o Colégio dos Cardeais (todos os cardeais da Igreja Católica) reuniu-se para eleger um novo papa. No prazo de 15 dias e no máximo 20 dias após a morte ou renúncia do papa, todos os cardeais ...

Como o Papa João Paulo II tornou-se um filósofo-Teólogo - manequins

Como o Papa João Paulo II tornou-se um filósofo-Teólogo - manequins

Quando João Paulo II ainda era Karol Wojtyła, uma adolescente no ensino médio, ele era tão bom em falar em público que ele foi escolhido para dar o endereço de boas-vindas a um dignitário muito especial visitando a escola um dia. O Príncipe Adam Stefan Stanisław Bonfatiusz Józef Sapieha (que é um bocado), o Arcebispo de Cracóvia e um ...

Assunção de Mary no Céu - manequins

Assunção de Mary no Céu - manequins

No calendário católico, o Dia da Assunção observa o dia em que Maria morreu e subiu - corpo e alma - no paraíso. A Igreja Católica professa que quando o tempo de Maria na Terra chegou ao fim, seu corpo foi colocado em um túmulo, mas seu corpo não caiu na Terra. Em vez disso, seu filho, Jesus Cristo, assumiu o seu corpo ...

Escolha dos editores

Como excluir fotos na sua Nikon D5300 - manequins

Como excluir fotos na sua Nikon D5300 - manequins

Você tem três opções para apagar imagens de uma memória quando estiver na sua Nikon D5300. Uma nota antes de começar: nenhuma das funções Excluir apaga as imagens que você protege. Para apagar fotos protegidas, primeiro você deve remover a proteção do arquivo. Como eliminar imagens uma de cada vez Durante a reprodução da imagem, você ...

Como exibir a visualização de visualização ao vivo em uma tela HDMI - manequins

Como exibir a visualização de visualização ao vivo em uma tela HDMI - manequins

Você pode conectar seu Câmera Nikon D7100 para um dispositivo HDMI (Interface Multimídia de Alta Definição) para ver a saída Live View na tela. Esse recurso é freqüentemente usado por fotógrafos de estúdio que querem uma visão maior do assunto do que o monitor da câmera fornece. Alguns problemas surgem quando você aproveita esta opção: ...

Como ativar a rotação automática da imagem em sua Nikon D5300 - manequins

Como ativar a rotação automática da imagem em sua Nikon D5300 - manequins

Quando tirar uma foto, o seu D5300 pode gravar a orientação da imagem - seja você segurado a câmera normalmente, criando uma imagem orientada horizontalmente ou girando a câmera do lado para filmar uma foto verticalmente orientada. Durante a reprodução, a câmera pode então ler os dados de orientação e girar automaticamente a imagem para que apareça ...

Escolha dos editores

Construir confiança para vender em mídias sociais - manequins

Construir confiança para vender em mídias sociais - manequins

Se o seu objetivo online é concluir uma venda para seus amigos e fãs de redes sociais, você terá que dar a essas pessoas um olhar frio e difícil. Alguns acreditam que mais é melhor. Mas mais o que? Você precisa se concentrar em pessoas que, no final do dia, podem comprar algo de você diretamente ou ...

Criar sua própria comunidade social para comércio - manequins

Criar sua própria comunidade social para comércio - manequins

Em um site comercial bem produzido, você muitas vezes vêem um link para uma área de comunidade social, que também pode levar o site externo para sites de redes sociais. Esta área é onde as páginas de serviço ao cliente e perguntas freqüentes vivem. Você também pode encontrar uma comunidade de clientes para clientes que incentive a participação de quem visita o site comercial. Se você escolher ...