











Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Tópicos em Excel - Aula 4/4. Conteúdo: Criação de macros, introdução à linguagem VBA.
Tipologia: Notas de aula
1 / 19
Esta página não é visível na pré-visualização
Não perca as partes importantes!












Vinicius A. de Souza [email protected]
Neste painel poderemos realizar as seguintes formatações:
Antes de começarmos a criar nossas macros, é importante mencionar o conceito de referências. Antes de iniciar a gravação de uma macro, podemos configurar a referência. Por padrão, o Excel utiliza referência absoluta. As referências absolutas realizam a gravação de operações com base no endereço selecionado, enquanto que a referência relativa apenas executa a operação, independente do local onde ela foi gravada. Para acionar a referência relativa, basta clicar no botão:
Para criar o botão, em “Selecionar mais usados”, selecione a opção “Macros”. Selecione a macro desejada e clique em “Adicionar”:
Você poderá ainda modificar o desenho e o texto do botão. Basta clicar sobre a macro inserida no painel direito e clicar em Modificar: Para remover este botão criado da barra de ferramentas, você deverá acessar o mesmo painel, selecionar a macro a ser excluída e clicar em “Remover”:
A figura abaixo mostra, em destaque, um menu criado: Posteriormente, poderemos atribuir novos menus aos menus criados (sub-menus), novos botões e comandos, inclusive botões associados a macros. Para remover estes itens, basta acessar o painel de Personalização novamente (Exibir – Barra de ferramentas – Personalizar), clicar sobre o item e arrastá-lo para o painel. Para excluir uma macro, basta acessar o painel de macros (ALT + F8), selecionar a macro desejada e clicar no botão Excluir.
É possível ainda associar uma macro a um botão de controle, parecido com este:
Para isto, você precisa primeiro habilitar a aba desenvolvedor. Clique no botão Office, escolha “Opções do Excel”. Na categoria “Mais usados”, selecione a opção “Mostrar guia Desenvolvedor na faixa de opções”. Feito isto, vá para a aba Desenvolvedor. Clique em inserir – Controles de formulário – Botão. Então, clique e arraste o ponteiro do mouse, como se estivesse desenhando o botão. Automaticamente o Excel solicitará que você selecione a macro a ser executada quando clicarem neste botão. É possível configurar algumas opções de botão, basta clicar com o botão direito do mouse sobre ele:
As Sub-rotinas são aquelas cuja definição é delimitada pelas palavras-chave Sub e End Sub. Assim, se reparar todas as macros que grava no Excel são deste tipo. Repare ainda como é que são definidas: Sub <nome_da_macro> ( ) <corpo_da_macro> End Sub Estas Sub-rotinas são designadas pelo nome que lhe atribuímos e não recebem parâmetros do exterior, têm como função desempenhar um conjunto de tarefas que compõem o seu corpo. O corpo da macro, é assim composto por um conjunto de instruções, sendo que cada instrução diferente necessita de estar numa linha diferente. Funções são rotinas cuja definição começa com a palavra-chave Function e termina com as palavras End Function. Todas as funções que utiliza no Excel são deste tipo de rotina. A sua definição tem a estrutura seguinte: Function <Nome da Função> (
Variáveis são repositórios de dados na memória, que podem ser acessados através de um apelido. Quando se pretende atribuir valores a variáveis devemos indicar o nome da variável (que é uma espécie de apelido, ou referência à sua posição na memória), o operador "=" e o valor que se pretende que a variável armazene. Sintaxe: <Nome_Variável> =
Como o nome da variável representa, de certa forma, o conteúdo da mesma, sempre que mencionarmos o nome da variável é o seu conteúdo que será considerado. Por exemplo, na expressão: Total = Parcela_1 + Parcela_ Parcela_1 representa o primeiro valor introduzido e Parcela_2 representa o segundo valor, não se trata de adicionar o nome de duas variáveis, mas adicionar os conteúdos que elas armazenam.
O tipo de variável está associado ao gênero de dado que esta tem, por hipótese, de armazenar. Temos os seguintes tipos de variáveis: Nome Tamanho Intervalo Integer 2 bytes -32768 a 32767 Long 4 bytes -2.147.483.648 a 2.147.483. Single 4 bytes -3,4 x 10^38 a 3,4 x 10^38 Double 8 bytes 1,7 x 10^308 a 1,7 x 10^308 Currency 8 bytes -9223372036854,5808 a 9223372036854, String 1 byte por caractere 0 a aproximadamente 65. Boolean 2 bytes Verdadeiro ou Falso Date 8 bytes 01/01/100 a 31/12/ Object 4 bytes Qualquer referência a objeto Variant 16 bytes + 1 byte para cada caractere Válido para qualquer tipo de dados.
A declaração de variáveis em VBA tem a seguinte forma: Dim nome_variavel As tipo Onde:
Para usar esta função, basta selecionar uma célula da planilha ativa e digitar = celsius(45), por exemplo.
Estruturas de controle são mecanismos de programação que permitem controlar o fluxo de processamento de uma rotina. Resumidamente, o VBA possui as seguintes estruturas:
If -Then - Else Testa uma condição e executa um determinado conjunto de instruções consoante o resultado dessa avaliação For – Next Executa uma determinada tarefa um determinado número de vezes. While-Wend Executa uma determinada tarefa enquanto que uma determinada condição permaneça verdadeira, com o valor True. Do – Loop Executa uma determinada tarefa enquanto que a avaliação de uma condição permaneça True ou então até que seja True. Select - Case Seleciona um dos segmentos de código a processar mediante a avaliação consecutiva de condições. For – Each – Next Realiza uma determinada tarefa repetitiva em cada objeto de uma coleção ou em cada item de um vetor.
Podemos imaginar o IF como a função SE do Excel: =IF( <condição>, <se condição verdadeira>, <se condição falsa> ) A função SE tinha o seguinte comportamento:
Menos que 3 Nenhum Entre 3 e 5 Baixo Entre 6 e 8 Médio Maior que 8 Alto Um possível código para implementar esta classificação seria:
base = InputBox("Digite a base da potencia: ") potencia = InputBox("Digite a potencia: ") resultado = 1 For contador = 1 To potencia Step 1 resultado = resultado * base Next MsgBox “resultado: ” & resultado End Sub
A estrutura While-Wend tem um funcionamento similar ao For-Next. Realiza um looping um determinado número de vezes, até que uma determinada condição seja falsa. Porém, um grande diferencial do laço While é que, dependendo da nossa implementação, ele pode ficar executando determinadas instruções um número não determinado de vezes. Sintaxe While <Condição> <Instruções a realizar em cada iteração> Wend Exemplo de aplicação Vamos fazer um simples contador para ir de 1 até 10: Sub testa_while() Dim contador As Integer contador = 1 While contador < 10 MsgBox "Valor contador: " & contador contador = contador + 1 Wend End Sub