NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!

UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI

Você está em: PrincipalArtigosLivroexc2007ribbon › Capítulo 1 : 10
Quer receber novidades e e-books gratuitos?
« Anterior Δ Página principal ¤ Índice Próxima »
Programando o RibbonX no Excel 2007
Autor: Robert Friedrick Martim
Lição 10 - Exemplos Avançados - Parte 1

Passada a primeira parte, queremos agora levar a nossa customização ao próximo nível.

O nosso objetivo agora é personalizar outros grupos e adicionar controles mais avançados à nossa personalização. Iniciarei este tópico mostrando como adicionar uma descrição ao botão personalizado.

Porém, este tópico não é o único avançado. Discutiremos outras questões avançadas separadamente.

Adicionando dicas: screenTips e superTips

Ao passarmos o mouse sobre um botão de comando qualquer (assumindo que o Enhanced screentips está ativo) obtemos dicas sobre o comando em questão:


Figura 5‑1 Dicas e super dicas

O nosso objetivo agora é exatamente este: adicionar dicas e super dicas aos nossos comandos.

Para inserir tais dicas precisamos retornar ao nosso XML onde utilizaremos as propriedades (ou atributos) screentips e supertips para determinar os dois itens:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon startFromScratch="false">
    <tabs>
      <tab
        id="meuTab"
        label="Minha Guia">

        <group
          id="meuGrupo"
          label="Meu Grupo">

          <button
            id="btn1"
            label="Meu Botão"
            imageMso="HappyFace"
            size="large"
            screentip="Botão Feliz"
            supertip="Clique neste botão para uma mensagem super feliz!"
            onAction="Msg" />
        </group>

      </tab>
    </tabs>
  </ribbon>
</customUI>

Ao passarmos o mouse sobre o nosso botão de comando obtemos a dica e super dica conforme definido no XML:


Figura 5‑2 Dica e super dica para botões de comando

Adicionando ícone personalizado ao botão

No exemplo anterior vimos como adicionar dicas e super dicas. Agora, veremos como adicionar uma imagem personalizada ao nosso botão.

Como não tinha nenhuma foto melhor, sou obrigado a “dar uma de narcisista” e utilizar a minha própria foto para o próximo exemplo, mas claro que você poderá utilizar a foto ou ícone que desejar.

Até o momento utilizamos o atributo (propriedade) imageMso para determinar uma imagem interna do Office (veja Apêndice C para lista de imageMso). Agora, utilizaremos o atributo (propriedade) image para determinar uma imagem personalizada.

Crie um novo documento Excel nos padrões que estamos utilizando, salve e feche-o. Abra o Office 2007 Custom UI Editor e abra o documento recentemente criado.

Aqui o leitor verá um pequeno botão de imagem (Insert Icons). Clique neste botão e navegue até a imagem que deseja acoplar ao documento. Depois defina o atributo (propriedade) image como sendo igual ao nome da figura (sem a extensão):


Figura 5‑3 Definindo uma imagem personalizada

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon startFromScratch="false">
    <tabs>
      <tab
        id="meuTab"
        label="Minha Guia">

        <group
          id="meuGrupo"
          label="Meu Grupo">

          <button
            id="btn1"
            label="Robert Martim"
            image="rob"
            size="large"
            screentip="Autor: Robert Martim"
            supertip="Clique neste botão para acessar a página do autor..."
            onAction="pagAutor" />
        </group>

      </tab>
    </tabs>
  </ribbon>
</customUI>

Você pode agora abrir o documento Excel o qual mostrará a imagem no seu botão:


Figura 5‑4 Imagem personalizada

Adicionando um grupo a uma guia interna

Vejamos agora como adicionar um grupo (e um botão a este grupo) em uma das guias internas do Excel. Suponha que o objetivo seja inserir um grupo na guia Início (TabHome) conforme mostra a figura abaixo:


Figura 5‑5 Adicionando um grupo à uma guia interna

Novamente, crie o seu documento e salve-o no padrão já ensinado. Feche o arquivo e abra-o no Office 2007 Custom UI Editor onde você deverá entrar o seguinte XML:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon startFromScratch="false">
    <tabs>

      <tab idMso="TabHome">

        <group
          id="meuGrupo"
          label="Grupo Internet"
          insertBeforeMso="GroupClipboard">

          <button
            id="btn" label="Visite o Site"
            onAction="irSite"
            screentip="Visite o nosso site"
            supertip="Para ficar por dentro de todas as novidades do Office 2007, visite o nosso  site!!!"
            size="large"
            imageMso="HyperlinkInsert" />
        </group>

      </tab>
    </tabs>
  </ribbon>
</customUI>

Note a construção do miolo iniciando pela guia que conterá o nosso grupo. O esquema é o mesmo utilizado anteriormente.

Adicionando um botão de comando ao Office Menu

Vejamos então como adicionar botões de comando aos grupos internos. Neste exemplo, adicionaremos dois botões no menu anteriormente conhecido como Arquivo (File). Os botões serão adicionados como mostram as figuras:


Figura 5‑6 Adicionando botões de comando em grupos internos

O primeiro botão será inserido sob o grupo Imprimir ao passo que o segundo será inserido sob o grupo Enviar. O botão Imprimir é um elemento do tipo “SplitButton” (botões de separação/quebra). Não obstante, o botão Enviar é considerado um Menu.

O menu “arquivo” (File) é composto de forma similar aos exemplos dados até o momento. Na versão Beta 2, este tag era denominado fileMenu na versão RTM do Office o tag foi modificado para officeMenu:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon startFromScratch="false">
    <officeMenu>

    </officeMenu>
  </ribbon>
</customUI>

Dentro da hierarquia ele se encontra encapsulado na Faixa de Opções. Logo abaixo do officeMenu vem o nosso splitButton e em seguida o menu que desejamos inserir. Note que na versão Beta 2 o idMso do menu é MenuShare. Já na versão RTM o idMso foi modificado para FileSendMenu:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon startFromScratch="false">

    <officeMenu>

      <!-- Inserir um botão no menu Arquivo (File) sob o grupo "Imrpimir" -->
      <splitButton
      idMso="FilePrintMenu">
        <menu>
          <button
            id="prn"
            image="rob"
            label="Impressora do Robert"
            description="Imprime o documento atual na impressora do computador do Robert..."
            onAction="prnRobert"/>

        </menu>
      </splitButton>

      <!-- Inserir um botão no menu Arquivo (File) sob o grupo/menu "Enviar" -->
        <menu
            idMso="FileSendMenu">

        <button
            id="enviar"
            image="rob"
            label="Enviar e-mail ao Robert"
            description="Clique aqui para enviar um email ao Robert..."
            onAction="emailRobert"/>
        </menu>

    </officeMenu>
  </ribbon>
</customUI>

Podemos agora adicionar os dois callbacks existentes em nosso documentos:

'Callback for prn onAction
Sub prnRobert(control As IRibbonControl)
    MsgBox "Sentimos em informar que tal impressora não está disponível...", _
        vbExclamation
End Sub

'Callback for emailRobert onAction
Sub emailRobert(control As IRibbonControl)
    Dim appOl       As Object
    Dim email       As Object
   
    On Error GoTo Err_Handler
    Set appOl = CreateObject("Outlook.Application")
    Set email = appOl.CreateItem(olMailItem)
   
    With email
        .Subject = "Fale com o autor..."
        .To = "rm@msofficegurus.com"
        .Body = "Digite sua mensagem aqui..."
        .Display 0
    End With

Limpar:
    Set appOl = Nothing
    Set email = Nothing
    Exit Sub

Err_Handler:
MsgBox Err.Description, vbCritical, Err.Number
Resume Limpar

End Sub

« Anterior Δ Página principal ¤ Índice Próxima »

Quer Aprender VBA no Excel, Sem Dificuldades, com Exemplos
Práticos Passo a Passo e com Explicações Detalhadas?

Aprenda com Júlio Battisti: "Macros e Programação VBA no Excel 2010 Através de Exemplos Práticos e Úteis - Passo a Passos

Junto com o livro você Recebe 11 Bônus Incluindo 50 horas de Vídeo Aulas.

Mesmo que Você não Saiba Nada de Programação VBA ou já Tenha Tentado
Aprender VBA e Desistiu ou Achou Difícil, com Este Livro EU GARANTO que Você Aprenderá, SEM DIFICULDADES. APRENDIZADO GARANTIDO.

Clique Aqui Para Todos os Detalhes sobre Esta Oferta

- É com alegria que Comunico o lançamento do meu 42º Livro.

 

- Perfeito para Iniciantes em Programação VBA.

 

- Abordo desde o Básico até Comandos Avançados.

 

- Códigos detalhadamente explicados, linha por linha.

 

- Criação de Funções e Procedimentos com VBA.

 

- O Modelo de Objetos do Excel - Exemplos Práticos.

 

- Criação de Formulários - UseForms.

 

- Criação de um Sistema de Cadastro Completo, com Foto.

 

- Como trabalhar com Tabelas Dinâmicas na Programação VBA.

 

- Como trabalhar com Gráficos na Programação VBA.

 

- Rotina que Escreve um número por Extenso usando VBA.

 

- E muito, muito mais mesmo...

 

- Junto com o livro você recebe 50 horas de Vídeo Aulas sobre Macros, Programação VBA, Fórmulas e Funções Avançadas, Dashboards e Muito mais.

 

[Bônus]: 60 horas de Vídeo Aulas sobre Macros, Programação VBA, Fórmulas e Funções Avançadas no Excel, Recursos Avançados, Dashboards e Muito mais.

 

Aprenda com Júlio Battisti: "Macros e Programação VBA no Excel 2010 Através de Exemplos Práticos e Uteis - Passo a Passos

Aprenda com Júlio Battisti: "Macros e Programação VBA no Excel 2010 Através de Exemplos Práticos e Uteis - Passo a Passos

A BÍBLIA DA
PROGRAMAÇÃO
VBA NO EXCEL

 

Quer receber novidades e e-books gratuitos?

Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

Todos os direitos reservados, Júlio Battisti 2001-2021 ®

[LIVRO]: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2010 - PASSO-A-PASSO

APRENDA COM JULIO BATTISTI - 1124 PÁGINAS: CLIQUE AQUI