57
Excel Avançado: Macros

Macros

Embed Size (px)

DESCRIPTION

PET, Curso de Macros no Excel

Citation preview

Page 1: Macros

Excel Avançado: Macros

Page 2: Macros

Macros e VBA - Definições• Problemas convencionais x Programação;– Linguagem do Office VBA (Visual Basic for

Applications);

• Macros: são sequências de comandos e funções armazenados em um módulo de código VBA e pode ser executada sempre que se precisar executar a tarefa, ou seja, você automatiza uma tarefa.

Page 3: Macros

• Criação de macros:– Via gravador de macros do Excel: grava-se todas

as ações que farão parte da macro e transforma-se todas essas ações em códigos VBA;

– Via criação de código VBA: requer o domínio da linguagem, onde todas as ações serão escritas diretamente no Visual Basic Editor do Office

Macros e VBA - Definições

Page 4: Macros

Macros e VBA – Menu Desenvolvimento

Page 5: Macros

Macros e VBA – Menu Desenvolvimento

Visual Basic: abre o Microsoft Visual Basic, local onde todos os códigos da

macro estão contidos;

Macros: Exibe a lista de macros existentes, onde você pode adicionar,

editar ou excluir uma macro;

Gravar Macro: Botão utilizado para a gravação da macro;

Segurança de Macro: Personaliza as opções de segurança de uma macro.

Page 6: Macros

Macros e VBA – Menu Desenvolvimento

Inserir: Insere controles no documento, como botões, caixas de seleção,

barras de rolagem, entre outros;

Propriedades: Exibe as propriedades dos controles;Exibir Código: Exibe o código do Visual Basic para o Controle;

Page 7: Macros

Microsoft VBA

Janela “Projeto”: Elementos que fazem partedo projeto atual: as três planilhas usuais mais

o módulo gerado

Editor do VBA: Código VBA vinculadoa macro. Cada linha executa uma operação

específica

Page 8: Macros

Macros - Gravação

Armazenar macro em:Pasta de trabalho pessoal de macros: se quiser que uma macro fique disponível sempre que você usar o Excel. Ele cria uma pasta de trabalho pessoal de macros oculta.Nova pasta de trabalho: salva a macro para que possa ser utilizada numa nova pasta de trabalho.Esta pasta de trabalho: salva a macro para ser utilizada na pasta atual de trabalho.

Page 9: Macros

• Para a análise do código VBA, gravar uma macro da seguinte forma: em qualquer célula do Excel, escrever algo e mudar a cor da fonte e do fundo da célula. Depois, copiar o conteúdo e colar em outra célula. Feito isso, parar a gravação e analisar o código gerado.

Exemplo 1 – Seleção e Cópia

Page 10: Macros

Exemplo 1 – Seleção e CópiaIdentificação da macro criada

Conteúdo da célula ativa, bem como localização da mesma no documento.

Formatação da fonte: Cor, intensidade e negrito

Formatação do fundo da célula

Local da célula copiada, comando de cópia, seleção da célula destino

e comando de colar.

Page 11: Macros

Macros – Edição: Nome

Page 12: Macros

Macros – Edição: Opções

Page 13: Macros

Salvando Macros

Page 14: Macros

Abrindo arquivos com Macro

Page 15: Macros

Macros – Botões (Controles)Controles de Formulário: Permite ao usuário atribuir uma

macro já elaborada para o controle escolhido;Controles ActiveX: O usuário deverá fornecer todo o código

VBA para a ação a ser executada pelo controlador.

O usuário poderá criar a macroou cancelar a ação e atribuir uma

macro já existente posteriormente.Como? Botão direito do mouse sobre o

controlador Atribuir Macro

Page 16: Macros

• Grave uma macro chamada “ModeloTabela”.

Exemplo 2 – Cores e controles

A tabela deverá conter 5 colunas e 20 linhas. Fundo: CORES PADRÃO – Verde-claro,fonte da cor preta. Cabeçalhos: CORES PADRÃO – Verde,fonte da cor branca em negrito.

Contorno simples em todas as bordas.Borda espessa abaixo da primeira e da última linha. Depois, pare a gravação da macro.

Page 17: Macros

Agora, grave outra macro para limpar a tabelaexistente e deixar a área de trabalho do Excel como

antes. Salve-a com o nome “LimpaTabela”.

Após isso, vamos aplicar as macros a botões.Escolha uma nova planilha, e adicione o controlador“botão” e adicione a ele a macro “ModeloTabela”.

Escolha um nome adequado para o botão.Em seguida, faça o mesmo e grave um botão

com a macro de limpar a tabela.

Page 18: Macros

Exemplo 3 – Integração

Integração numérica é uma alternativa utilizada para a resolução de integrais definidas onde a função não é disponível para análise direta de tabelas ou não possui uma

solução analítica que seja obtida pelos métodos de integração convencionais

Page 19: Macros

• Criar uma macro para fazer integrais numéricas onde o usuário cria a fórmula em uma célula e fornece os limites inferior e superior de integração em outras células. Subdividir o intervalo de integração em 100 e formatar as células antes de gravar a macro para não perder tempo.

Exemplo 3 – Integração

Page 20: Macros

• Criar uma tabela semelhante a essaLimite

Inferior

Limite superior

Função

ÁreaIntervalos

variação dos limites/intervalo

Page 21: Macros

=A2=C2+$A$4

=C2^2 =D2*$A$4

Coloque os valores dos limites da função f(x)=x²;Arraste as colunas até obter 100 linhas

Page 22: Macros

• A tabela formadadeve ser algo parecidocom essa

Page 23: Macros

• É preciso fazer a soma das linhas usadas na coluna E, essa soma de áreas corresponde à Integral da função.

• Para isso, selecione a célula desejada, digite = SOMA(), selecionando todos os valores da coluna E.

Page 24: Macros

• Agora gravaremos a Macro que resolverá essa integral sem “poluir” a tela.

Page 25: Macros

• Selecione a célula A4, correspondente a dx, e digite a fórmula : =(B2-A2)/100

• Selecione a célula C2, correspondente a x, e digite a fórmula : = A2

Page 26: Macros

• Selecione a célula E2, correspondente ao campo da área, e digite a fórmula =D2*$A$4

• Selecione a célula C3 e digite a fórmula = C2+$A$4

Page 27: Macros

• Arrastar as colunas C, D e E até atingir 100linhas. Insira a função soma para a coluna E.

• Copie a célula com a fórmula da soma, selecione uma outra célula, G2, e cole especial (valores).

Page 28: Macros
Page 29: Macros

• Selecione a célula G1 e digite Integral.• Selecione todas as outras células que têm

texto e reescreva, dessa forma a macro montará essa mesma sequência de campos para qualquer outra planilha, quando executada.

• Apague todos os valores da tabela, com exceção dos campos (xi, xf ....Integral);

• Encerre a gravação.

Page 30: Macros

• O resultado esperado é esse:

• Para testar o funcionamento, preencha os campos e execute a Macro.

Page 31: Macros

• Atribua a macro a um botão, selecione a macro desejada e depois nomeie o botão.

Page 32: Macros

• Agora para resolver a integral, basta preencher os campos, atentando sempre para a escrita da função e apertar o botão “integral”.

Page 33: Macros

Entalpia

• Grandeza física que mede a energia de um sistema termodinâmico

• A entalpia de um sistema aumenta com o aumento da temperatura

Page 34: Macros

• A capacidade calorífica a pressão (p) constante é o coeficiente angular da curva da entalpia (H) em função da temperatura.

)³()²()( TdTcTbaCp

CpdTH

Page 35: Macros

• Calcule a variação de entalpia do ar, considerando a temperatura inicial de 25ºC e a final de 100ºC.

• Utilize a macro criada anteriormente.

a b C d

28,94 0,4147. 10-2 0,3191.10-5 -1,965.10-9

)³()²()( TdTcTbaCp

CpdTH

Page 36: Macros

• Crie células para colocar as constantes, isso facilitará a digitação da fórmula

)³()²()( TdTcTbaCp

Page 37: Macros

• Abra o código fonte, no final das linhas digite :

Page 38: Macros

O que são Funções?

• Uma Função é um grupo de comandos que podem ser executados, simplesmente através da chamada do nome da Função;

• A função sempre retorna um ou mais valores para o comando que a chamou, isso a difere da sub-rotina;

• Você não precisa executar, basta chamá-la em uma célula e preencher os campos.

Page 39: Macros

Sintaxe para declaração da Função

Function Nome_da_Função (argumento argumento2, argumento n)

Comando 1Comando 2...Comando nEnd Function

Page 40: Macros

Criar funções

• Há inúmeras funções na biblioteca do Excel

Page 41: Macros

Inserindo uma função

• Criaremos uma função para calcular o número de Reynolds e o fator de atrito;

• Selecione o guia Desenvolvedor;• Clique no ícone Visual Basic

Page 42: Macros

• Clique duas vezes na Planilha 1

Page 43: Macros

• Insira um procedimento

NomearFunçãoPúblico

Page 44: Macros

• Digitar:

Page 45: Macros

• Digite os campos como abaixo, no campo de Reynolds entre com a função

Page 46: Macros

• Grave uma macro para a criação de uma janela como essa:

Page 47: Macros

• No campo Reynolds,

Page 48: Macros

• Clicando em cada variável, procure os campos correspondentes.

Page 49: Macros

• Basta preencher os valores nos campos desejados e o resultado aparecerá instantaneamente no Campo em que a função foi inserida. Qual a diferença para macro?

Page 50: Macros

Exemplo: fator de atrito

Page 51: Macros

• Criar uma função para o cálculo do Fator de Atrito:

Esta função é para quando o Reynolds é maior que 2000.

Page 52: Macros

• Criaremos um teste para verificar se o Regime é Laminar ou Turbulento, dependendo da resposta o programa agirá de modo diferente.

• Mas para isso, é necessário criar um teste lógico, usando If – then – else e uma macro que seja capaz de executá-lo.

Page 53: Macros

• Executem a macro que cria aquela janela anterior.

• Acessem o VBA e entrem com esse código, criando uma macro que fará o teste

Page 54: Macros

• Colocando Caixas de mensagens:

Page 55: Macros

• Regime Laminar :

Page 56: Macros

• Regime Turbulento:

Page 57: Macros

P.E.T – ENGENHARIA DE ALIMENTOS