Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

unidade 5
Formulários avançados 
e funções de 
programação
Senac - Serviço Nacional de Aprendizagem Comercial
Diretoria Regional
Divisão de Educação e Tecnologia - DITEC
Coordenadoria de Educação a Distância - CED
 B 184
BALESTRIN, Cláudio Luiz.
 Excel 2010 : recursos avançados / Cláudio Luiz Balestrin ... [et al.] ; Roberson 
de Lima, coordenador. – Curitiba : Senac. Divisão de Educação e Tecnologia. 
Coordenadoria de Educação a Distância, 2014.
 
 
 1. Excel (Programa de computador). 2. Informática. I. Lima, Roberson de. 
II. Título.
 CDD 005.36
Catalogação: Silvia Cristina das Chagas e Silva CRB-9 / 1105
Esta obra está protegida quanto aos direitos autorais e editoriais. A reprodução total ou 
parcial de seu conteúdo é permitida somente para fins educacionais e culturais, desde que 
citada a fonte. 
Produção de texto: Cláudio Luiz Balestrin
Elaboração de conteúdo: Lilian de Almeida Ribeiro
Design Instrucional: Lilian Noguchi
Edição e Revisão: Fernanda Fenili de Santana
Coordenação: Roberson de Lima
Projeto Gráfico e Diagramação: Elizabeth Ratzke; Claudia Araújo Godinho
Eixo: Informação e Comunicação
3
EXCEL 2010 – RECURSOS AVANÇADOS
1. Criar fórmula matricial
Em Excel, quando uma fórmula utiliza um intervalo de células (matriz), e não somente uma célula 
como referência a ser analisada, ela é chamada de matricial. Uma fórmula matricial faz cálculos 
múltiplos e, em seguida, produz um único resultado ou múltiplos resultados. 
 
No exemplo abaixo, na matriz A2:B6, todos os números acima de 25 são multiplicados por 5 na 
coluna E.
 Agora é com você! 
CRIAR FÓRMULA MATRICIAL
Prática 1
Situação: Em uma matriz, todos os números acima de 25 são multiplicados por 5. 
Para obter os resultados, siga as instruções abaixo:
1) Abra o arquivo matricial_exemplo.xlsx. 
unidade 5
 Formulários avançados 
 e funções de 
 programação
4
EXCEL 2010 – RECURSOS AVANÇADOS
 
2) Clique na célula C2, digite a fórmula =A2+B2, pressione Enter e arraste 
(copie) a fórmula até a célula C6. 
3) Selecione o intervalo D2:D6 e digite a função matricial =A2:A6+B2:B6 e, 
imediatamente após, pressione as teclas Shift + Ctrl + Enter. Explicando a 
fórmula: cada célula no intervalo D2:D6 retorna o cálculo da soma entre a 
Coluna A e a Coluna B. 
4) Selecione o intervalo E2:E6 e digite a função matricial =(A2:B6>25)*A2:A6*5 
e, imediatamente após, pressione Shift + Ctrl + Enter. Nesse cálculo, primei-
ramente, o Excel analisa a matriz A2:B6 para identificar os números maiores 
do que 25. O retorno dessa análise é: 0 para FALSO e 1 para VERDADEIRO. 
Por exemplo: o Excel identificou que o valor 52 da célula A4 é maior do que 25, ou 
seja, (VERDADEIRO = 1). Assim sendo, multiplicou o valor VERDADEIRO “1” pelo 
valor “52” e o resultado multiplicou por “5”. 
 
 
 Atenção!
Ao digitar uma função matricial é necessário sempre concluir a fórmula utilizando 
as teclas Shift + Ctrl + Enter. Se for necessário editar a função, pressione F2 e fina-
lize com Shift + Ctrl + Enter. Observa-se que após pressionar essas teclas a função 
aparece entre chaves na barra de fórmulas; entretanto, ao digitar a fórmula não é 
necessário digitar os símbolos { e }. O Excel os coloca automaticamente.
5
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Prática 2
Situação: Em um órgão público necessita-se calcular a aposentadoria a ser paga aos 
servidores. A legislação estabelece que o valor a pagar deve ser a média dos oitenta 
por cento dos maiores salários corrigidos desde julho de 1994. Nesse caso, é neces-
sário realizar a soma dos últimos maiores salários do servidor e esses dados devem 
estar na ordem decrescente. 
Vamos criar uma planilha de salários hipotética. Para isso, siga as instruções 
a seguir:
1) Abra o Excel e digite a seguinte planilha:
 
2) Coloque os números na ordem decrescente. 
3) Analise o seguinte: é necessário somar 80% dos maiores salários (já or-
denados), ou seja, queremos que os 16 primeiros salários sejam somados (16 
refere-se a 80% do total de 20 salários). Assim, na célula A21, digite a seguinte 
fórmula: =SOMA((LIN(A1:A20)<=16)*A1:A20) e, imediatamente após, pressio-
ne as teclas Ctrl + Shift + Enter.
6
EXCEL 2010 – RECURSOS AVANÇADOS
4) Para obter a média dos oitenta por cento dos maiores salários, basta dividir 
o total do valor da célula A21 por 16. Veja na figura abaixo uma planilha de 
exemplo desta prática:
 
2. Criar controles de formulário
Na Unidade 3 – Recursos Avançados: parte 2, você conheceu o formulário de dados, incluiu esse 
recurso na faixa de opções do Excel e realizou algumas atividades práticas. 
Nesta unidade, você conhecerá outro recurso útil para formulário: o controle giratório. Mas, antes, 
é necessário habilitar a guia Desenvolvedor, que disponibiliza o comando. Confira o passo a passo 
para fazer isso!
Habilitar a guia Desenvolvedor
Para habilitar a guia Desenvolvedor e, assim, utilizar os controles de formulário, siga estes passos:
1) Clique em Arquivo e em Opções.
7
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
2) Na janela Opções do Excel, clique em Personalizar Faixa de Opções, no painel localizado 
à esquerda. Depois, selecione a caixa de seleção Desenvolvedor em Guias Principais, no item 
Personalizar a Faixa de Opções. Para finalizar, clique em OK.
 
3) Observe que a guia Desenvolvedor foi incluída na faixa de opções, após a guia Exibição.
 
4) Para acessar o comando Controle Giratório , clique na guia Desenvolvedor, no grupo 
Controles e, depois, em Inserir. 
 
8
EXCEL 2010 – RECURSOS AVANÇADOS
 Agora é com você! 
CRIAR CONTROLES DE FORMULÁRIOS.
Prática 1
Situação: Uma empresa possui três filiais e faz um controle de vendas. A empresa 
precisa saber o preço de venda dos itens de papelaria das suas filiais Centro, Abran-
ches e Batel, conforme margem de lucro.
1) Abra o arquivo formularios_exercicio.xlsx.
2) Clique na guia Desenvolvedor, no grupo Controles e, depois, em Inserir. Em 
seguida, clique no Botão de Rotação (Controles de Formulário) e depois clique 
em qualquer local da planilha para inserir o botão . 
3) Vamos criar um controle para calcular o Preço de Venda da filial Centro, 
conforme margem de lucro selecionada no botão de rotação. Clique no Botão 
de Rotação utilizando o botão direito do mouse para aparecer o menu e de-
pois clique na opção Formatar controle... para aparecer a janela. No item Va-
lor atual digite 0 – refere-se ao valor que está sendo mostrado ao pressionar 
o botão; no item Valor mínimo digite 0 – refere-se ao menor valor que o botão 
deverá apresentar; em Valor máximo digite 100 – refere-se ao maior valor que 
o botão deverá apresentar; em Alteração incremental digite 1 – refere-se ao 
incremento que o botão terá ao ser clicado; em Vínculo da célula, selecione a 
célula C6 – refere-se à célula que terá um valor a ser gerado.
 
4) Para testar o controle, clique nos botões  e  . Observe a alteração de 
valores na célula C6 e na coluna C.
9
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
5) Agora, crie os controles giratórios para as outras filiais: Abranches e Batel.
 Atenção!
Devido ao controle de rotação e os demais controles não aceitarem valores fracio-
nários, a fórmula na célula C4=C6/100 deverá ter formato de porcentagem. Desse 
modo, ao pressionar o botão controle giratório, o número será alterado e, por conse-
guinte, o valor da porcentagem também, pois está se referindo à célula. 
 Saiba Mais
É possível excluir o controle pressionando a tecla Delete. Para movê-lo, arraste-o 
com o mouse até o novo local e dimensione-o por meio das alças de edição existentes 
(quadradinhos brancos a redor do objeto). Caso você tenha tirado a seleção sobre o 
controle, dê um clique sobre o objeto utilizando o botão direito do mouse e aparece-
rá o menu referente ao objeto. 
Prática 2
Vamos criar o formulário abaixona planilha Form. Para isso, abra o arquivo formu-
larios_exercicio.xlsx e siga os passos abaixo:
10
EXCEL 2010 – RECURSOS AVANÇADOS
 
Criar botões
1) Clique na guia Desenvolvedor, no grupo Controles e, depois, em Inserir. Em 
seguida, clique no Botão (Controles de Formulário) e depois clique em 
qualquer local da planilha.
2) Ao abrir a janela Atribuir macro, clique em Cancelar.
3) No botão criado, digite Produto e clique em qualquer área da planilha. 
4) Clique no botão Produto, copie (Ctrl + C) e cole (Ctrl + V) seis vezes para 
criar os demais botões: Estoque, Custo, Venda, Prestações, Pedido e A Pagar.
Criar Caixa de Combinação
5) A Caixa de Combinação listará os sete itens de produtos. Clique na guia 
Desenvolvedor, no grupo Controles e, depois, em Inserir. Em seguida, clique 
no botão Caixa de Combinação (Controles de Formulário) e depois clique 
em qualquer local da planilha para inserir o botão  . Configure os campos 
Intervalo de entrada, Vínculo da célula e Linhas suspensas conforme mostra 
a imagem abaixo. Atenção: os dados selecionados estão na planilha Tabelas. 
11
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
 
• Intervalo de entrada: lista contendo os elementos do controle; poderá ser 
digitado, por exemplo, caneta, borracha, ou ainda, inserir o nome de uma 
área que a lista possui. Neste caso, a área se chama MODELOS.
• Vínculo da célula: ao selecionar o produto, o Excel vai exibir o número da 
opção correspondente. Por isso, esse valor deve ser guardado em uma 
célula à parte, pois será utilizado para pesquisar o preço e o estoque do 
produto.
• Linhas suspensas: o Excel exibe o número de itens na lista. Se houver um 
número menor do que os existentes, aparecerá uma barra de rolagem.
• Sombreado 3D: serve para atribuir um efeito tridimensional (3D) ao bo-
tão.
Exibir estoque
6) Vamos exibir a quantidade em estoque no formulário. Essa quantidade irá 
variar de acordo com o produto escolhido, portanto, ao fazer essa escolha, 
o número da linha correspondente aparecerá na célula G2 (célula de vínculo 
de produtos).
7) Para localizar o estoque, é necessário verificar qual a linha a ser pesqui-
sada, ou seja, qual o produto escolhido dentro da área chamada ESTOQUE. 
Portanto, o melhor a fazer é utilizar a função =ÍNDICE(área a localizar; linha; 
12
EXCEL 2010 – RECURSOS AVANÇADOS
coluna). Nesse caso não será necessário indicar a coluna, somente a área e a 
linha. Assim, a fórmula será =ÍNDICE(ESTOQUE;Tabelas!G2).
 
Criar um grupo de opções
8) Vamos criar um grupo para selecionar as filiais. Clique na guia Desenvol-
vedor, no grupo Controles e, depois, em Inserir. Em seguida, clique no botão 
Caixa de Grupo (Controles de Formulário) . Clique em qualquer área da 
planilha e ajuste o retângulo da caixa do grupo.
9) Crie três botões de opção, um para cada filial. Clique na guia Desenvolve-
dor, no grupo Controles e, depois, em Inserir. Em seguida, clique no Botão 
de Opção (Controles de Formulário) . Para digitar o nome, após criar os 
botões, você pode clicar em cada botão utilizando o botão direito do mouse 
para aparecer o menu. Depois, clique na opção Editar Texto.
 
Exibir preço de custo
10) Posicione o cursor na célula definida para exibir o preço de custo do pro-
duto.
11) Para obter qual o custo do produto, é necessário obter as informações 
fornecidas pelo usuário, pois o produto é escolhido por ele. A resposta é ar-
mazenada na célula G2 da planilha Tabelas. Assim, a fórmula a ser digitada é: 
=ÍNDICE(CUSTO;Tabelas!G2).
13
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Exibir o preço de venda
12) Posicione o cursor na célula definida para exibir o preço de venda do pro-
duto. 
13) Para obter o preço de venda, é necessário especificar qual o modelo 
(Tabelas!G2) e qual o lugar de origem ou filial (Tabelas!G3), assim, a fórmula 
a ser digitada é: =ÍNDICE(VENDAS;Tabelas!G2;Tabelas!G3).
Criar a barra de rolagem
14) É preciso criar uma barra de rolagem na qual o usuário deverá escolher a 
quantidade de prestações. Clique na guia Desenvolvedor, no grupo Controles 
e, depois, em Inserir. Em seguida, clique no botão Barra de Rolagem (Contro-
les de Formulário) e ajuste o botão. 
15) Para ativar as propriedades da barra de rolagem, clique nela utilizando o 
botão direito do mouse para exibir o menu e selecione Formatar controle... 
Preencha os campos com os valores conforme mostrado na imagem a seguir:
 
Informar a quantidade do pedido
16) O usuário deverá informar a quantidade do pedido. Para isso, é necessário 
validar a célula para que o valor do pedido seja sempre <= ao valor do esto-
14
EXCEL 2010 – RECURSOS AVANÇADOS
que. Assim, posicione o cursor na célula D15, local onde irá aparecer o valor 
do pedido.
17) Acesse a guia Dados e no grupo Ferramentas de Dados escolha a opção 
Validação de Dados. No item Permitir, escolha Personalizado. No item Fórmu-
la digite =E(D17<=D7). 
 
18) Clique na aba Mensagem de entrada e digite no campo de mesmo nome: O 
valor do pedido deverá sempre ser menor que a quantidade do Estoque. Para 
finalizar, clique em OK.
 
 Calcular valor a pagar
19) Vamos utilizar a função PGTO, cuja sintaxe é PGTO(taxa, nper, pv, [fv], 
[tipo]), e a função SE. Posicione o cursor na célula onde deverá aparecer o valor 
a ser pago e digite: =SE(Tabelas!G4;D12*D19;PGTO(3,5%;D15;-D19*D12)) 
Criar caixa de seleção
20) Clique na guia Desenvolvedor, no grupo Controles e, depois, em Inserir. 
15
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Em seguida, clique no botão Caixa de Seleção (Controles de Formulário) . 
Depois, clique na planilha no local indicado para inserir a caixa. 
21) Digite na caixa: À vista e clique nela com o botão direito do mouse para 
acessar a opção Formatar controle e abrir a janela de configuração.
22) Na janela Formatar Objeto, configure conforme mostrado na imagem a 
seguir:
 
23) O resultado final da tabela é este:
 
3. Criar macros
Você já ouviu falar de macro no contexto de planilhas eletrônicas? Ela é uma série de instruções 
agrupadas em um único comando para automatizar tarefas frequentemente realizadas em pastas 
de trabalho ou planilhas, sejam elas simples ou complexas. 
As macros são criadas de modo manual, mas os códigos de programação são gerados automati-
camente. Antes de criar uma macro é importante planejar como ela será usada. Existem três tipos 
de macros: macros de comandos, macros de funções definidas pelos usuários e macros de 
sub-rotina.
16
EXCEL 2010 – RECURSOS AVANÇADOS
Macros de comando: São macros que utilizam gravações de comandos, geralmente de menu. 
O procedimento funciona como se executassem os mesmos comandos várias vezes em uma 
pasta de trabalho.
Macros de funções definidas pelo usuário: São macros que permitem ao usuário criar sua 
própria função.
Macros de sub-rotina: São macros que utilizam macros de comando e de funções. A macro 
de sub-rotina pode ser executada dentro de outras macros. Assim, minimiza o uso de tarefas re-
petitivas, deixando o código de programação mais leve.
 Agora é com você! 
 CRIAR MACROS
Prática 1 – Macro de comando
Situação: Criar uma macro para centralizar texto. Observação: essa prática tem 
como objetivo criar uma macro simples para exercitar os procedimentos de gravar e 
parar gravação; em uma rotina de trabalho não seria uma macro necessária. 
Criar nome da macro
1) Abra o Excel e utilize uma planilha em branco. 
2) Clique na célula A1.
3) Acesse a guia Exibição e no grupo Macros clique no botão  para exibir as 
opções. Escolha a opção Gravar Macro... para abrir a caixa de diálogo. 
 
4) No item Nome da macro, digite o nome: Centralizar. 
5) No item Descrição é possível criar um pequeno texto descrevendo o proce
dimento. Digite: Centralização de texto.
6) Para finalizar, pressione OK.
17
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
 Atenção!
• Por padrão, o nome de uma macro não poderá iniciar com número e nem terespaços em branco entre as palavras.
• Ao criar uma macro é possível configurá-la para ser acionada por meio de uma 
tecla de atalho. Na janela Gravar macro, basta digitar o caractere que será utili-
zado juntamente com a tecla Ctrl.
Gravar macro
Após criar o nome da macro, irá aparecer um botão na barra inferior. Ele indica que 
a partir deste momento todos os comandos clicados serão gravados na macro e, ao 
ser clicado, tem a função de parar a gravação.
1) Com o cursor posicionado na célula A1, acesse a guia Página Inicial, grupo 
Alinhamento, e clique no botão Centralizar .
2) Clique no botão Parar Gravação. 
Executar macro
1) Digite os seguintes dados nas células:
• B1: casa;
• B2: escola;
• B3: amor;
2) Selecione o intervalo B1:B3.
3) Acesse a guia Exibição e no grupo Macros clique no botão Macros para 
abrir a caixa de diálogo que lista os nomes das macros criadas e os comandos 
disponíveis.
18
EXCEL 2010 – RECURSOS AVANÇADOS
4) Clique na macro Centralizar.
5) Clique no botão Executar. O Excel irá centralizar o texto nas células sele-
cionadas.
 
Visualizar listagem completa da macro
1) Acesse a guia Exibição e no grupo Macros escolha a opção Macros.
2) Clique no botão Editar para exibir os códigos da macro na janela do Visual 
Basic Applications, com todas as ações executadas durante o processo de 
gravação.
19
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
4. Macros no Visual Basic
As macros criadas no Excel utilizam a linguagem de programação Visual Basic que possui um am-
biente de edição de macros incluindo:
• um editor de código;
• um pesquisador de objeto hierárquico;
• um depurador;
• uma janela de propriedades;
• um explorer de projeto para visualizar e organizar os códigos e objetos nos projetos. 
Visual Basic é uma linguagem de programação para aplicativos da Microsoft.
As macros em Visual Basic apresentam as seguintes características: 
• linhas de comentários
• comandos
• código fonte do procedimento
LINHAS DE COMENTÁRIOS
As linhas de comentários são as linhas do código de programação iniciadas por apóstrofo (‘). Essas 
informações não são executadas na macro e, por padrão, incluem:
• O nome da macro;
• A data de criação da macro;
• Nome de quem criou a macro;
• A descrição.
20
EXCEL 2010 – RECURSOS AVANÇADOS
COMANDOS
O comando Sub indica o início de um procedimento de comandos e End Sub indica o fim. Os dois 
comandos são chamados de Procedimentos Sub.
Se o procedimento for do tipo função definida pelo usuário, ao invés das palavras-chave Sub e 
End Sub serão apresentados estes nomes: Function e End Function.
O nome do procedimento é apresentado à frente da palavra-chave seguido de parênteses, os quais 
são obrigatórios.
CÓDIGO FONTE DO PROCEDIMENTO
O código fonte do procedimento representa toda a ação que o programa executará. Ele está distri-
buído em duas rotinas com as palavras-chave With e End With. 
Rotinas de programação são um conjunto de ações que realizam uma tarefa específica.
21
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
5. Níveis de segurança de macro
Ao executar macros no Excel, a seguinte notificação pode ser exibida na barra de mensagens: “Avi-
so de Segurança. As macros foram desabilitadas.”
 
Isso ocorre devido ao nível de segurança usado para proteger o arquivo contra um vírus que 
pode ser executado por meio da macro. Assim, é importante personalizar as opções da Central de 
Confiabilidade de maneira que bloqueie arquivos indesejáveis.
JANELA CENTRAL DE CONFIABILIDADE
 
Para definir esse nível de segurança, siga este procedimento e conheça outras precauções úteis 
quando for executar macros.
DEFINIR NÍVEL DE SEGURANÇA
Para definir nível de segurança de macro realize os seguintes passos:
1) Abra a guia Desenvolvedor e no grupo Código escolha a opção Segurança de Macro.
 
22
EXCEL 2010 – RECURSOS AVANÇADOS
2) O Excel irá abrir a janela Central de Confiabilidade com as opções de configurações 
de macro. Confira a descrição dos níveis de segurança para escolher qual é a configuração 
mais adequada.
DESCRIÇÃO DOS NÍVEIS DE SEGURANÇA DE MACRO
1) Desabilitar todas as macros sem notificação: somente as macros instaladas em 
locais confiáveis serão executadas; as macros assinadas e não assinadas digitalmente serão 
desativadas. Todas as macros podem estar desativadas; para isso, configure o nível de se-
gurança como Desabilitar todas as macros sem notificação e, ao mesmo tempo, desative as 
macros instaladas em locais confiáveis (na guia Desenvolvedor, no grupo Código, 
clique em Segurança de Macro; na janela que abrir, escolha a opção Locais Confiáveis 
e habilite o item Desabilitar Todos os Locais Confiáveis). 
Observação: você também pode desabilitar Documentos Confiáveis, habilitando essa op-
ção na janela Central de Confiabilidade.
2) Desabilitar todas as macros com notificação: desabilita macros assinadas e não 
assinadas. As macros são automaticamente desabilitadas e o arquivo é aberto, porém, um 
aviso de segurança é emitido e o usuário tem a possibilidade de habilitar a macro.
DESCRIÇÃO DOS NÍVEIS DE SEGURANÇA DE MACRO
3) Desabilitar todas as macros, exceto as digitalmente assinadas: desabilita somen-
te as macros não assinadas, mas serão apresentados alertas de segurança se houver macros. 
4) Habilitar todas as macros (não recomendado; códigos possivelmente perigosos 
podem ser executados): quando a segurança é definida como baixa, todas as macros são 
tratadas da mesma maneira, independentemente da origem ou do status do certificado di-
gital. Com baixa segurança, nenhum aviso ou validação de assinatura é exibido e as macros 
são automaticamente ativadas. Utilize essa configuração somente se todas as macros em 
seus arquivos forem de fontes confiáveis.
23
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
PRECAUÇÕES AO EXECUTAR MACROS
Como as macros podem conter vírus, sempre tenha cuidado ao executá-las e realize estas precauções:
• Execute um programa antivírus com versão atualizada no computador;
• Ative as notificações de macros (níveis de segurança configurados na Central de Confia-
bilidade);
• Desmarque a caixa de seleção Confiar no acesso ao modelo de objeto do projeto 
do VBA: 
1. Clique no Botão do Microsoft Office e depois em Opções do Excel. 
2. Clique em Central de Confiabilidade, clique em Configurações da Central de 
Confiabilidade e depois em Configurações de Macro.
3. Desmarque a caixa de seleção:
 
• Utilize assinaturas digitais.
A assinatura digital é uma marca de autenticação eletrônica ̶ criptografada ̶ sobre informações di-
gitais, como mensagens de e-mail, macros ou documentos eletrônicos. A assinatura confirma se as 
informações são originárias do signatário e não foram alteradas. A imagem a seguir é um exemplo 
de uma linha de assinatura:
 Agora é com você! 
NÍVEIS DE SEGURANÇA DE MACRO
Para testar um nível de segurança de macro, realize os seguintes passos:
1) Abra o arquivo Macro_seguranca_alto.xlsm. Há uma macro na planilha e o 
nível de segurança padrão do Excel é Desabilitar todas as macros com notifi-
cação. Assim, exibirá esta mensagem:
24
EXCEL 2010 – RECURSOS AVANÇADOS
2) Clique em Habilitar Conteúdo na barra de mensagens.
3) Agora, vamos executar a Macro. Digite as seguintes informações nas célu-
las:
• A1: Teste;
• A2: Excel;
• A3: Fórmulas.
4) Selecione o intervalo A1:A3.
5) Acesse a guia Exibição e no grupo Macros escolha a opção Macros para 
abrir a janela. Ela exibe os nomes das macros criadas e os comandos dispo-
níveis.
 
6) Clique o botão Executar. O Excel irá centralizar as palavras Teste, Excel e 
Fórmulas.
6. Botão para executar macros
Na última atividade prática você executou uma macro, acessando-a por meio da janela Macros, 
disponível na guia Exibição, no grupo Macros. Agora, imagine que você tenha que realizar esse 
caminho todas as vezes que for executar uma macro. Seria bem cansativo, concorda?
Para facilitar a execução de macros, é possível atribuir teclas de atalho ou,ainda, criar botões 
de execução na Faixa de Opções e na Barra de Ferramentas de Acesso Rápido. Acesse a 
atividade prática para saber como criá-los.
25
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
 Agora é com você! 
 BOTÃO PARA EXECUTAR MACROS
Vamos criar um botão para executar a macro Centralizar. Para isso, realize as se-
guintes instruções:
1) Abra o arquivo do Macro_botao.xlsm.
2) Ao exibir o Aviso de Segurança na barra de mensagens, clique no botão 
Habilitar Conteúdo.
3) Acesse o menu Arquivo, clique em Opções para abrir a janela e clique em 
Barra de Ferramentas de Acesso Rápido. No item Escolher comandos em, 
escolha a opção Macros para exibir uma lista de macros.
 
4) Clique no nome da macro centralizar.
5) Clique no botão Adicionar. Observe que a macro centralizar agora também 
aparece no item Personalizar Barra de Ferramentas de Acesso Rápido, na 
coluna à direita.
26
EXCEL 2010 – RECURSOS AVANÇADOS
 
6) Clique em OK para fechar a caixa de diálogo Opções do Excel. Observe que 
o botão criado (botão centralizar) aparece na Barra de Ferramentas de Aces-
so Rápido, no canto superior esquerdo.
 
7) Selecione o intervalo A1:A4 e clique no botão centralizar. Observe que as 
palavras ficaram centralizadas.
8) Para fazer outro teste, com o intervalo A1:A4 ainda selecionado, acesse a 
guia Página Inicial, grupo Alinhamento, clique no botão Alinhar texto à es-
querda e, depois, clique no botão centralizar.
9) Na Barra de Ferramentas de Acesso Rápido, clique com o botão direito do 
mouse sobre o botão centralizar e escolha a opção Personalizar Barra de Fer-
ramentas de Acesso Rápido.
27
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
 
10) No item Escolher comandos em, selecione o botão centralizar e depois 
clique no botão Modificar... para abrir a janela.
11) Na janela Modificar Botão, escolha uma imagem para o botão para per-
sonalizá-lo e clique em OK. Também é possível alterar o nome do botão no 
campo Nome para exibição.
 
28
EXCEL 2010 – RECURSOS AVANÇADOS
7. Macros de endereços absoluto e relativo
Quando se utiliza o gravador para gerar um procedimento, este por padrão define os endereços das 
células como absolutos, ou seja, toda vez que você aciona o procedimento, este será executado na 
mesma posição. 
Havendo a necessidade de execução de um procedimento ocorrer em outras células da mesma pla-
nilha, será então necessário utilizar o endereço relativo.
 Agora é com você! 
MACROS DE ENDEREÇOS ABSOLUTO E RELATIVO
Prática 1: macro usando endereço absoluto
Realize as seguintes instruções:
1) Abra uma nova pasta de trabalho.
2) Vamos gravar a macro. Acesse a guia Exibição, grupo Macros, clique em 
Macros. Depois clique no botão  para expandir o menu. Clique em Gravar 
Macro...
3) No campo Nome da macro, digite a palavra Absoluto.
4) No campo Tecla de atalho, digite a letra B (em maiúsculo). A tecla de atalho 
para ativar a macro é Ctrl + Shift + B.
5) No item Armazenar macro em, mantenha selecionada a opção Esta pasta 
de trabalho.
6) No campo Descrição, digite a frase Endereço absoluto. A janela Gravar 
macro ficará preenchida, conforme mostra a seguinte imagem:
 
29
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
7) Clique no botão OK para fechar a janela.
8) Agora, vamos digitar alguns dados para testar a macro Absoluto. Clique na 
célula A1 e digite o nome Senac/UEAD
9) Clique na célula B1 e digite 3219-4892.
10) Em seguida, clique na célula C1 e digite Andrea Farias.
11) Agora, vamos parar a gravação. Clique na célula A1 e clique no botão Parar 
Gravação, localizado na barra inferior, ou na guia Exibição, grupo Macros, 
clique em Macros e, depois, em Parar gravação.
12) Clique em qualquer célula e pressione as teclas <Ctrl> + <Shift> + B. 
Observe que a tela permanece igual, porque a macro foi gravada no modo 
Absoluto.
13) Confira o código da macro:
Sub Absoluto()
‘
‘ Absoluto Macro
‘ Endereço absoluto
‘‘ Atalho do teclado: Ctrl+Shift+B
‘
Range(“A1”).Select
ActiveCell.FormulaR1C1 = “Senac/UEAD”
Range(“B1”).Select
ActiveCell.FormulaR1C1 = “3219-4892”
Range(“C1”).Select
ActiveCell.FormulaR1C1 = “Andrea Farias”
Range(“A1”).Select
End Sub
14) O comando Range(“A1”).Select significa que a célula A1 será selecionada.
Prática 2: macro usando endereço relativo
Siga os passos abaixo:
1) Apague as informações digitadas na planilha e clique na célula A1.
2) Vamos gravar a macro. Acesse a guia Exibição e, no grupo Macros , clique 
em Macros e, depois, em Gravar Macro... para abrir a janela.
3) No campo Nome da macro digite a palavra Relativo.
4) No campo Tecla de atalho digite a letra R (em maiúsculo). A tecla de atalho 
para ativar a macro é Ctrl + Shift + R.
5) No item Armazenar macro mantenha selecionada a opção Esta pasta de 
trabalho.
6) No campo Descrição digite Endereço relativo. A janela Gravar macro ficará 
preenchida conforme mostra a seguinte imagem:
30
EXCEL 2010 – RECURSOS AVANÇADOS
 
7) Clique no botão OK para fechar a janela.
8) Acesse a guia Macros e no grupo Macros clique no botão  para expandir 
o menu. Depois, clique no botão Usar Referências Relativas. Isso irá habilitar 
o uso de referência relativa.
 
9) Clique na célula A1 e digite Senac/UEAD.
10) Clique na célula B1 e digite 3219-4892.
11) Em seguida, clique na célula C1 e digite Andrea Farias.
12) Depois, clique na célula A1 e clique no botão Parar gravação.
13) Nas células A1, A4, A6 e A10 pressione as teclas <Ctrl> + <Shift> + R em 
cada uma delas. Observe que a macro executa a macro em todas essas posi-
ções.
14) Confira o código da macro:
Procedimento Sub Relativo
Sub Relativo ()
‘
‘ Relativo Macro
‘ Endereço relativo
‘
‘ Atalho do teclado: Ctrl+Shift+R
31
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
‘
ActiveCell.Select
ActiveCell.FormulaR1C1 = “Senac/UEAD”
ActiveCell.Offset(0, 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “3219-4892”
ActiveCell.Offset(0, 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “Andrea Farias”
ActiveCell.Offset(0, -2).Range(“A1”).Select
End Sub
15) O comando ActiveCell.FormulaR1C1 = “Senac/UEAD”significa que na 
célula ativa será digitado “Senac/UEAD”. O comando ActiveCell.Offset(0, 
1).Range(“A1”).Select irá avançar uma coluna. E o comando ActiveCell.Formu-
laR1C1 = “3219-4892” irá digitar na célula ativa “3219-4892”.
8. O ambiente Visual Basic for Applications
Para criar funções e planilhas personalizadas, o Excel dispõe de um ambiente de desenvolvimento 
chamado de Visual Basic for Applications (VBA). O VBA é um aplicativo implementado do Visual 
Basic incorporado em todos os programas do Microsoft.
No VBA há três áreas principais divididas em janelas: projeto, propriedades e código. Elas po-
dem estar exibidas ou ocultas na tela.
Janela Projeto
A janela Projeto exibe uma lista dos projetos e de todos os itens que fazem parte, por exemplo, 
formulários e módulos. 
32
EXCEL 2010 – RECURSOS AVANÇADOS
Essa janela possui três botões de visualização: Exibir código, Exibir objeto e Alternar 
pastas. 
 
Janela Propriedades
A janela Propriedades lista as propriedades da fase de projeto dos objetos selecionados e suas 
definições atuais.
Essa janela possui a caixa objeto, que lista o objeto selecionado e as guias alfabético e categori-
zado. 
 
Alfabético: Essa guia apresenta em ordem alfabética uma lista de todas as propriedades do 
objeto selecionado. Para alterar a definição da propriedade, selecione o nome da propriedade e 
digite ou selecione uma nova definição.
Categorizado: Essa guia apresenta por categoria uma lista de todas as propriedades do objeto 
selecionado. Nessa guia é possível expandir ou reduzir a lista; basta alternar entre os sinais + 
ou -.
33
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Janela Código 
Por meio da janela Código é possível gravar, exibir e editar o código. A janela Código pode ser aberta 
a partir de: Projeto, Módulos ou Formulário. Na imagem abaixo observe os elementos disponíveis 
na janela:Caixa Objeto, Caixa Procedimento, Barra de Divisão e Botões de Visualização: 
Caixa Objeto: Exibe o nome do objeto selecionado.
Caixa Procedimento: Lista todos os eventos exibidos na Caixa Objeto. Quando estiver sele-
cionado Geral na Caixa Objeto, a Caixa Procedimento listará as declarações e todos os procedi-
mentos gerais que foram criados.
Barra de Divisão: Quando a Barra de Divisão é arrastada, a janela Código é dividida em dois 
painéis horizontais que podem ser rolados de modo independente.
Botões de Visualização: O botão Exibir procedimento mostra o procedimento selecionado e 
o botão Exibir módulo completo mostra todo o código do módulo.
 Agora é com você! 
O AMBIENTE VISUAL BASIC FOR APPLICATIONS
Vamos criar uma macro simples para alterar a cor de células selecionadas. Para isso, 
siga os passos a seguir:
1) Abra uma nova pasta de trabalho no Excel.
2) Abra o Visual Basic for Applications: acesse a guia Desenvolvedor e no 
grupo Código clique em Visual Basic. 
34
EXCEL 2010 – RECURSOS AVANÇADOS
3) Para criar a macro é necessário inserir um módulo. Na janela VBA acesse 
o menu Inserir e clique em Módulo.
 
4) Na janela Código vamos criar a macro.
 
5) Digite os seguintes comandos na janela Código:
Sub Cor()
‘ Cor Macro
Selection.Font.ColorIndex = 3
End Sub
6) Agora retorne ao Excel. Clique no botão Exibir Microsoft Excel, localizado 
abaixo do menu Arquivo.
 
7) No Excel digite algumas palavras em uma ou mais células. Depois, selecio-
ne-as e execute a macro: acesse a guia Exibição, e, no grupo Macros, clique no 
botão  para expandir os comandos e, depois, clique em Exibir macro.
35
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
 
8) Após executar a macro, observe que as palavras ficaram na cor vermelha.
9) Vamos editar a macro. Acesse a guia Exibição e, no grupo Macros, clique no 
botão  para expandir os comandos e, depois, clique em Exibir macro. Na ja-
nela Macro, selecione a macro Cor e clique no botão Editar para abrir o VBA.
10) Altere o número 3 para 5 neste comando: Selection.Font.ColorIndex = 5
11) Retorne ao Excel. Selecione as células as quais você havia digitado as pala-
vras e execute a macro. Observe que a cor foi alterada de vermelho para azul.
9. Conhecer conceitos de técnicas de programação
Quando se desenvolve programas de computador, existem alguns termos comuns utilizados em lin-
guagem de programação. A seguir, conheça o conceito dos seguintes termos do Visual Basic: pro-
cedimento, instruções, objetos, propriedades, métodos, funções, constantes, variáveis 
e caixa de texto.
Procedimento
Também chamado de macro, é um conjunto de códigos (instruções) dispostos em uma forma lógica 
dentro do editor da linguagem Visual Basic. Confira um exemplo de procedimento.
Mouse over “exemplo”:
Sub Formatação ()
ActiveCell.FormulaR1C1 = “Curso de Excel Avançado”
ActiveCell.Font.Bold = True
ActiveCell.Font.Size = 14
ActiveCell.Font.Name = “Arial”
ActiveCell.Font.ColorIndex = 55
End Sub
36
EXCEL 2010 – RECURSOS AVANÇADOS
Instruções
É um conjunto de palavras-chave que executam operações programadas. As instruções são classifi-
cadas em métodos, objetos, propriedades e funções.
Métodos: É uma ação que um objeto executa. A sintaxe é Objeto.Método (Argumento1...
ArgumentoN).
Objetos: é uma estrutura que contém dados e métodos para manipular os dados. Por exemplo, 
controles e formulários.
Propriedades: É um conjunto de características tanto visuais quanto de posição de um objeto. 
Por exemplo, a janela é um objeto, sua propriedade pode ser maximizada ou minimizada. A 
sintaxe é Objeto.Propriedade. Podem ser atribuídos valores às propriedades: Objeto.Pro-
priedade = Valor.
Funções: São fórmulas que realizam cálculos automáticos. Existem funções internas do Visual 
Basic e aquelas criadas pelo usuário.
Confira exemplos de instrução, métodos, objetos, propriedades em um código.
Janela pop-up “Exemplos”:
Exemplos de instrução, métodos, objetos, propriedades
Utilizando como exemplo o seguinte procedimento, confira na tabela os exemplos de instrução, 
métodos, objetos, propriedades.
Sub Formatação ()
ActiveCell.FormulaR1C1 = “Curso de Excel Avançado”
ActiveCell.Font.Bold = True
ActiveCell.Font.Size = 14
ActiveCell.Font.Name = “Arial”
ActiveCell.Font.ColorIndex = 55
End Sub
Instrução Objetos Propriedades Métodos
ActiveCell.FormulaR1C1 = “Curso 
de Excel Avançado”
ActiveCell FormulaR1C1
ActiveCell.Font.Bold = True ActiveCell Font Bold
ActiveCell.Font.Size = 14 ActiveCell Font Size
ActiveCell.Font.Name = “Arial” ActiveCell Font Name
ActiveCell.Font.ColorIndex = 55 ActiveCell Font ColorIndex
Observação: no procedimento Formatação percebe-se que um objeto pode ter diversas proprie-
dades e/ou métodos.
37
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
 Saiba Mais 
CONHEÇA UM MODO PARA SIMPLIFICAR A SINTAXE DE UMA INSTRUÇÃO.
Quando se tem um objeto com vários métodos e propriedades, recomenda-se 
simplificar a sintaxe com a instrução With/End With. Observe a seguir o mesmo 
procedimento exemplificado, porém utilizando a instrução With/End With:
Sub Formatação ()
ActiveCell.FormulaR1C1 = “Curso de Excel Avançado”
 With ActiveCell.Font
 .Bold = True
 .Size = 14
 .Name = “Arial”
 .ColorIndex = 55
 End with
End Sub
Constantes
São palavras que representam valores ou textos ̶ numéricos, alfanuméricos ou outro tipo de valor 
̶ que podem ser usados em outros locais da aplicação. No Visual Basic há dois tipos de constantes: 
as incorporadas e as definidas pelo usuário. 
Incorporadas: São encontradas nas propriedades e métodos tanto do Excel quanto do Visual 
Basic.
Definidas pelo usuário: As constantes definidas pelos usuários devem ter a seguinte sinta-
xe: Const CONSTANTE = expressão. Const: é o comando padrão para se definir a constante. 
CONSTANTE: é o nome a ser definido para a constante; recomenda-se utilizar letras maiúscu-
las. Expressão: Poderá ser uma fórmula, um valor numérico ou alfanumérico. Exemplo: Const 
JUROS=6.
Exemplo: Const JUROS = 6
Variáveis
As variáveis têm função similar às constantes. A diferença é que podem ter valores alterados quando 
a aplicação for executada. As variáveis são espaços reservados na memória do computador para ar-
mazenar informações para uso posterior. Cada tipo de variável aceita dados específicos. Os tipos de 
variáveis são: string, byte, integer, long, single, double, date, boolean, variant, currency, 
object e array.
38
EXCEL 2010 – RECURSOS AVANÇADOS
String: Pode ser chamada de alfanumérica, pois pode conter quaisquer tipos de dados no for-
mato texto. Ao declarar uma variável do tipo string, o texto deve ficar entre parênteses.
Byte: Aceita números inteiros de 0 a 255. Ocupa um byte de memória. 
Integer: Aceita números inteiros de -2.147.483.648 a 2.147.483.647. Ocupa 4 bytes de me-
mória.
Long: Aceita valores inteiros longos, variando de -9.223.372.036.854.775.808 a 9.223.372.036.854.
775.807. Ocupa 8 bytes de memória.
Single: Também chamado de precisão simples. Aceita números reais, variando aproximada-
mente de -3,4E38 a 3.4E38. Ocupa 4 bytes de memória.
Double: Também chamado de dupla precisão. Aceita números reais, variando aproximadamen-
te de -1.8E308 a 4.9E324. Ocupa 8 bytes de memória.
Date: Aceita datas e horas, variando de 1/1/0001 a 31/12/9999. Ocupa 8 bytes de memória.
Boolean: Aceita valores booleanos: true e false.
Variant: Aceita qualquer tipo de variável. Ocupa 16 bytes quando armazena números e 22 
bytes quando armazena string.
Currency: Aceita o tipo monetário ou decimais fixos. Varia de -922.337.203.685.477,5808 a 
922.337.203.685.477,5807. Ocupa 8 bytes de memória. 
Object: Estabelece referência a objetos. Ocupa 4 bytes de memória em plataforma de 32 bits 
e 8 bytes em plataforma de 64 bits.
Array: Aceita o tipo vetor ou matriz. É um conjunto de variáveis em que cada elemento possui 
um índice. 
Saiba como declarar as variáveis em um procedimento.
Declaração de variáveisA declaração de variáveis em um procedimento ocorre utilizando-se a palavra-chave Dim para de-
terminar informações de variável e o tipo de dados. A cláusula Dim não é obrigatória, porém quando 
uma variável não é declarada, está sendo utilizado um espaço de memória do tipo variant. Como 
consequência, utiliza-se mais memória do que o necessário. Assim, é melhor sempre declarar as 
variáveis.
Exemplos:
a) Dim Nome As String: nome é uma variável do tipo String;
b) Dim Idade As Byte: idade é uma variável do tipo Byte;
c) Dim Nascimento As Date: nascimento é uma variável do tipo Date;
d) Dim NumFilhos As Byte: NumFilhos é uma variável do tipo Byte;
e) Dim EstadoCivil As String: EstadoCivil é uma variável do tipo String.
Caixa de texto (Application.InputBox)
O método Application.InputBox possibilita criar uma caixa de diálogo para entrada de informações 
39
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
pelo usuário. A sintaxe é: Application .InputBox(Prompt, [Title], [Default], [Left], [Top], 
[HelpFile], [HelpContextID], [Type] ); os argumentos em português são Application.InputBox 
(mensagem, título, padrão, esquerda, superior, ajuda, contexto, tipo). O argumento Prompt ou 
mensagem é o único argumento obrigatório, os demais são opcionais.
Application: Definição do objeto.
Prompt as a string: É a mensagem a ser exibida ao usuário na Caixa de Diálogo.
Title: É o título da caixa de mensagem, situado na barra de título. Caso title seja omitido, apa-
recerá o nome padrão Input.
Default: É um valor que aparecerá preenchido na InputBox.
Left, Top: Pode-se definir uma posição para a caixa de diálogo abrir na tela. A medição é por 
pontos, a partir do canto superior esquerdo da tela.
HelpFile, HelpContextID: Pode-se criar um arquivo de ajuda on-line para a caixa de entrada 
e um tópico da ajuda. Aparecerá um botão “?”.
Type: Tipo de dados a ser retornado. Caso este argumento seja omitido, a caixa de diálogo 
retorna um texto. O tipo poderá ser um destes valores: 0, 1, 2, 4, 8, 16 ou 64. Onde: 0: Uma 
fórmula; 1: Um número; 2: Texto (cadeia de caracteres); 4: Um valor lógico (Verdadeiro ou 
Falso); 8: Uma referência de célula, como um objeto intervalo; 16: Um valor de erro, #N/D 
(não definido); 64: Uma matriz de valores.
10. Desvios condicionais
Quando se cria instruções em um procedimento, podemos determinar que partes do programa 
sejam executadas ou não, dependendo do resultado de um teste lógico ou comando. Esse procedi-
mento é chamado de desvio condicional.
Nesse caso são utilizadas as instruções If...Then e If...Then...Else, aliadas ao uso de operado-
res relacionais. Se a operação utilizar duas ou mais condições simultaneamente, é necessário usar 
operadores lógicos, também conhecidos como operadores booleanos: And, Or e Not.
Operadores relacionais
Os operadores relacionais são usados para verificar hipóteses a serem definidas.
Símbolo Significado
= Igual a
> Maior que
< Menor que
>= Maior ou igual
<= Menor ou igual
<> Diferente
40
EXCEL 2010 – RECURSOS AVANÇADOS
Exemplo de código utilizando o operador relacional:
 If [Variável 1] >= [Variável 2] Then
 Instrução
 End If
Condição And
O operador And (E) é utilizado quando dois ou mais relacionamentos lógicos de uma condição 
precisam ser verdadeiros.
 
A B A e B Situação
F F F Falso
V F F Falso
F V F Falso
V V V Verdadeiro
Exemplo de código utilizando a condição And:
 If [Condição 1] And [Condição 2] Then
 Instrução
 End If 
Condição Or
O operador Or (Ou) é utilizado quando pelo menos um dos relacionamentos lógicos de uma con-
dição precisa ser verdadeiro.
A B A ou B Situação
V V V Verdadeiro
V F V Verdadeiro
F V V Verdadeiro
F F F Falso
Exemplo de código utilizando a condição Or:
 If [Condição 1] Or [Condição 2] Then
 Instrução
 End If
Condição Not
A condição Not é utilizada quando uma condição deve ser não verdadeira, ou seja, mesmo sendo 
uma condição verdadeira, ela será tratada como falsa.
Condição Situação
Verdadeiro Falso
Falso Verdadeiro
41
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Exemplo de código utilizando a condição Not:
 If Not [Condição] Then
 Instrução
 End If 
11. Malhas de repetição
Uma parte específica de um procedimento pode ser repetida inúmeras vezes enquanto determina-
da condição for verdadeira. Esse processo é conhecido como malhas ou laços de repetição, ou 
ainda looping, e utiliza a instrução Do While... Loop. 
Exemplo de código utilizando malhas de repetição
No código abaixo a instrução é executada enquanto (Do While) o contador for menor que 10.
Sub Do_Loop_While_no_início()
Dim x, Contador, Soma 
x = 10 
Contador = 1 
Soma = 0 
‘ Efetua a soma dos dez primeiros números maiores do que zero. 
Do While Contador < x 
Soma = Soma + Contador 
Contador = Contador + 1 
Loop 
MsgBox “Soma = “ & Soma 
End Sub 
12. Função MsgBox
A função MsgBox exibe uma mensagem em uma caixa de diálogo e aguarda que o usuário clique 
em determinado botão para retornar um valor do tipo Integer. Esse valor de retorno indica em qual 
botão o usuário clicou. Confira a sintaxe da função MsgBox e os respectivos argumentos.
 
42
EXCEL 2010 – RECURSOS AVANÇADOS
Sintaxe da função MsgBox
MsgBox(Prompt, [Buttons As VbMsgBoxStyle = vbOkOnly], [Title], [HelpFile], [Context]) As
VbMsgBoxResult
• Prompt (obrigatório) ̶ é a mensagem mostrada na caixa de diálogo. O comprimento 
máximo de Prompt é de aproximadamente 1.024 caracteres, dependendo da largura dos 
caracteres utilizados.
• Buttons (opcional) ̶ é uma expressão numérica que representa a soma de valores que 
especifica o número e o tipo de botões, o estilo de ícone, a identidade do botão padrão 
e a modalidade da caixa de mensagem. Se omitido, o valor padrão para Buttons é 0. 
Confira as definições do argumento buttons.
Definições do argumento buttons
As definições do argumento buttons são as seguintes:
Constante Valor Descrição
VbOKOnly 0 Exibe somente o botão OK.
VbOKCancel 1 Exibe os botões OK e Cancelar.
VbAbortRetryIgnore 2 Exibe os botões Abortar, Repetir e Ignorar.
VbYesNoCancel 3 Exibe os botões Sim, Não e Cancelar.
VbYesNo 4 Exibe os botões Sim e Não.
VbRetryCancel 5 Exibe os botões Repetir e Cancelar.
vbCritical 16 Exibe o ícone Mensagem crítica.
vbQuestion 32 Exibe o ícone Consulta de aviso.
vbExclamation 48 Exibe o ícone Mensagem de aviso.
vbInformation 64 Exibe o ícone Mensagem de informação.
vbDefaultButton1 0 O primeiro botão é o padrão.
vbDefaultButton2 256 O segundo botão é o padrão.
vbDefaultButton3 512 O terceiro botão é o padrão.
vbDefaultButton4 768 O quarto botão é o padrão.
vbApplicationModal 0
Janela restrita do aplicativo; o usuário deve responder à cai-
xa de mensagem antes de continuar o trabalho no aplicativo
atual.
• Title (opcional) ̶ é a expressão de sequência de caracteres exibida na barra de título 
da caixa de diálogo. Se Title for omitido, será inserido o nome do aplicativo na barra de 
título.
• HelpFile (opcional) ̶ é a expressão de sequência de caracteres que identifica o arquivo 
de ajuda a ser usado como auxílio relativo à caixa de diálogo. Se HelpFile for fornecido, 
Context também deverá ser fornecido.
43
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
• Context (opcional) ̶ é a expressão numérica que representa o número de contexto 
da ajuda, atribuído ao tópico de Ajuda apropriado pelo autor. Se Context for fornecido, 
HelpFile também deverá ser fornecido. 
Exemplos:
a) MsgBox “Legal”, 48: a janela exibe a mensagem Legal e o ícone Mensagem de aviso.
b) MsgBox “Péssimo”, 16: a janela exibe a mensagem Péssimo e o ícone Mensagem crítica.
13. Colocando em prática
Até aqui você estudou alguns conceitos básicos de técnicas de programação. Como prática 
para reforçar esses conceitos, faça a atividade.
 Agora é com você! 
CONCEITOS BÁSICOS DE TÉCNICAS DE PROGRAMAÇÃO
Prática 1
Nesta prática será digitado um comando de inserção de texto automático e alguns 
comandosde formatação.
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub Formatação ()
ActiveCell.FormulaR1C1 = “Curso de Excel Avançado”
ActiveCell.Font.Bold = True
ActiveCell. Font.Size = 14
ActiveCell.Name = “Arial”
ActiveCell.Font.ColorIndex = 55
End Sub
5) Na Barra de Ferramentas do Visual Basic, clique no botão Exibir Microsoft 
Excel.
6) Clique numa célula qualquer.
7) Acesse o menu Exibição, grupo Macros, e clique em Macros.
44
EXCEL 2010 – RECURSOS AVANÇADOS
8) Selecione a macro Formatação e clique no botão Executar.
Prática 2
Nesta prática serão utilizados os comandos With/End With na criação dos códigos.
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub Formatação2 ()
ActiveCell.FormulaR1C1 = “Curso de Excel Avançado”
With ActiveCell.Font
 .Bold = True
 .Size = 14
 .Name = “Arial”
 .ColorIndex = 55
End with
End Sub
5) Na Barra de Ferramentas do Visual Basic, clique no botão Exibir Microsoft 
Excel.
6) Clique em uma célula qualquer.
7) Acesse o menu Exibição, grupo Macros, e clique em Macros.
8) Selecione a macro Formatação2 e clique no botão Executar.
 
45
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Prática 3
Nesta prática será utilizado o código InputBox para exibir uma caixa de diálogo de 
entrada de dados. 
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub InpuBox ()
‘Atalho do teclado: Ctrl+i
Application.InputBox “Toca Bip?”, “Responda Sim ou Não”
End Sub
5) Clique em uma célula qualquer.
6) Ac esse o menu Exibição, grupo Macros, e clique em Macros.
7) Selecione a macro InputBox. Depois clique no botão Opções para atribuir 
uma tecla de atalho para a macro. No item Tecla de atalho, digite a letra i. 
Clique em OK e depois clique no botão Executar. 
 
Prática 4
Nesta prática... será utilizado o código InputBox para exibir uma caixa de diálogo de 
entrada de dados e, se a resposta do usuário for Sim, irá disparar um breve bip.
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
46
EXCEL 2010 – RECURSOS AVANÇADOS
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub Bip()
‘Atalho do teclado: Ctrl+b
Resposta = Application.InputBox(“Toca Bip?”, “responda Sim ou Não”)
If resposta = “Sim” Or resposta = “sim” Then
Beep
End If
End Sub
5) Clique em uma célula qualquer.
6) Acesse o menu Exibição, grupo Macros, e clique em Macros.
7) Selecione a macro Bip. Depois clique no botão Opções para atribuir uma 
tecla de atalho para a macro. No item Tecla de atalho, digite a letra b. Clique 
em OK e depois clique no botão Executar. 
Prática 5
Nesta prática será criado um questionário, utilizando o código InputBox para exibir 
uma caixa de diálogo de entrada de dados e a função MSgBox para exibir uma caixa 
de mensagem.
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub Questionario()
‘Atalho do teclado: Ctrl+q
nome$ = Application.InputBox(“Digite seu nome:”, “Entrada de da-
dos”)
resp% = MsgBox(“Você mente a idade “ & nome$ & Chr(13) & “Mente: 
Sim/Não?”, 4)
If resp% = vbNo Then
MsgBox “Legal”, 48
Else
MsgBox “Horrível”, 16
End If
End Sub
5) Clique em uma célula qualquer.
6) Acesse o menu Exibição, grupo Macros, e clique em Macros.
7) Selecione a macro Questionário. Depois clique no botão Opções para atri-
buir uma tecla de atalho para a macro. No item Tecla de atalho, digite a letra 
47
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
q. Clique em OK e depois clique no botão Executar. 
8) Responda à pergunta que aparece na caixa de diálogo; teste mais de uma 
vez. 
Explicando o código
Na atividade prática 5 foram utilizadas duas variáveis: nome$ e resp%. A primeira 
recebe valores string (texto) e a outra recebe apenas número inteiro.
A variável nome$ tem função similar à Application.InputBox, que assumirá o valor 
digitado pelo usuário, neste caso o nome. Após isso, esse nome será utilizado 
pela função MsgBox.
A função MsgBox utilizará a concatenação (&) seguido da variável nome$. Em segui-
da, é concatenada a função Chr(13) que, com o valor 13, efetua a mudança de linha; 
a outra parte da mensagem também concatenada “Mente: Sim/Não?” aparece na 
segunda linha.
O código 4 exibe os botões Sim e Não.
O valor dos botões é atribuído à variável resp%, que será analisada pela instrução 
If...Then...Else
Prática 6
Nesta prática você utilizará o comando Dim para a declaração de uma variável.
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub QualIdade()
‘Atalho do teclado: Ctrl+r
Dim resp As Variant
resp = Application.InputBox (“Você responde certo sua idade: S/N”, , 
, 2)
If resp = “S” Or resp = “s” Then
MsgBox “Legal”, 48
Else
MsgBox “Péssimo”, 16
End If
End Sub 
5) Clique em uma célula qualquer.
6) Acesse o menu Exibição, grupo Macros, e clique em Macros.
7) Selecione a macro Qualidade. Depois clique no botão Opções para atribuir 
48
EXCEL 2010 – RECURSOS AVANÇADOS
uma tecla de atalho para a macro. 
8) No item Tecla de atalho, digite a letra r. Clique em OK e depois clique no 
botão Executar. 
9) Responda à pergunta que aparece na caixa de diálogo; teste as duas res-
postas: S e N. 
10) Faça outro teste digitando uma letra diferente, por exemplo, a letra q. 
Observe que o Excel assume esta resposta como não. Talvez seja necessário 
considerar somente as respostas S ou N. Na prática 7 vamos resolver esse 
problema.
Prática 7
Nesta prática você utilizará as instruções While e Loop para verificar e repetir um 
bloco de código.
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Sub QualIdade2()
‘Atalho do teclado: Ctrl+u
Dim resp As Variant
resp = “”
Do While resp <> “S” And resp <> “s” And resp <> “N” And resp <> 
“n”
resp = Application.InputBox(“Você responde certo sua idade: S/N”, , 
, 2) 
Loop
If resp = “S” Or resp = “s” Then
MsgBox “Legal”, 48
Else
MsgBox “Péssimo”, 16
End If
End Sub
5) Clique em uma célula qualquer.
6) Acesse o menu Exibição, grupo Macros, e clique em Macros.
7) Selecione a macro Qualidade2. Depois clique no botão Opções para atribuir 
uma tecla de atalho para a macro. 
8) No item Tecla de atalho, digite a letra u. Clique em OK e depois clique no 
botão Executar. 
9) Responda à pergunta que aparece na caixa de diálogo; teste as duas res-
49
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
postas: S e N. 
10) Faça outro teste digitando uma letra diferente, por exemplo, a letra q.
11) Salve o arquivo.
Explicando o código
Na atividade prática 7 foi utilizada a instrução Do While...Loop a qual executa um re-
petição (looping) até que a condição seja verdadeira. Assim, enquanto não se digitar 
as opções estabelecidas como verdadeiras, a pergunta é exibida.
A indicação resp=”” é utilizada para garantir que o valor esteja vazio. Ainda há um 
problema na instrução. Se o botãoCancelar for pressionado, o looping continuará 
sendo executado. Observação: não foi definida uma atribuição para o botão Cance-
lar. 
Prática 8
Aqui você colocará em prática todos os códigos, comandos e instruções realizadas 
nas práticas anteriores.
1) Abra o arquivo elaborado na prática 7.
2) Na guia Exibição, grupo Macros, escolha a opção Macros.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Selecione a macro Qualidade2 e clique no botão Editar. 
5) Faça uma alteração no código: antes do comando Loop, insira estas linhas:
If resp = False Then
Exit Sub
End if
6) O código completo ficará deste modo:
Sub Qualidade2()
‘Atalho do teclado: Ctrl+u
Dim resp As Variant
resp = “”
Do While resp <> “S” And resp <> “s” And resp <> “N” And resp <> 
“n”
resp = Application.InputBox(“Você responde certo sua idade: S/N”, , 
, 2)
If resp = False Then
Exit Sub
End if
Loop
If resp = “S” Or resp = “s” Then
MsgBox “Legal”, 48
Else
50
EXCEL 2010 – RECURSOS AVANÇADOS
MsgBox “Péssimo”, 16
End If
End Sub 
14. Funções definidas pelo usuário
O Excel possui centenas de funções predefinidas na biblioteca, mas você também pode desenvolver 
a sua própria função utilizando o código da linguagem Visual Basic for Applications. Uma função 
caracteriza-se por receber argumentos externos, processar os dados e emitir um resultado.
As funções definidas pelo usuário não podem conter comandos do menu ou ações de teclado ou 
mouse, e não podem ser geradas pelo gravador de macro, ou seja, são desenvolvidas manualmente. 
Uma função utiliza as palavras-chaves Function/End Function. Exemplo de código:
Function RaizA(Valor)
‘Função = raiz quadrada
Indice = 2
RaizA = Valor ^ (1 / Indice)
End Function
 Agora é com você! 
FUNÇÕES DEFINIDAS PELO USUÁRIO
Nesta prática você definirá uma função para calcular a raiz quadrada. 
1) Abra o Excel.
2) Na guia Desenvolvedor, grupo Código, clique em Visual Basic ou tecle Alt 
+ F11.
3) Ative o menu Inserir e escolha a opção Módulo para abrir uma folha na 
qual os códigos serão digitados.
4) Digite o código a seguir:
Function RaizA(Valor)
‘Função raiz quadrada
Indice = 2
RaizA = Valor ^ (1 / Indice)
End Function 
5) Para visualizar a função, retorne ao Excel. Acesse a guia Fórmulas e no 
grupo Biblioteca de Funções clique em Inserir Função. Escolha a categoria 
Definido pelo Usuário.
51
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
15. Depuração de erros
Uma macro pode ter códigos muito extensos. Nesse caso, se ocorrerem erros durante o processo 
de execução da macro, torna-se difícil identifi cá-los. Por isso, o Excel disponibiliza uma ferramenta 
que auxilia na identifi cação de erros chamada de depuração.
Em Informática os erros também são conhecidos como bugs.
Barra de depuração
A barra de depuração está disponível no Visual Basic for Applications no menu Exibir, opção Barra 
de Ferramentas, item Depurar.
Modo de criação: ativa/desativa o modo de estrutura.
Executar macro (F5): executa o procedimento. Se o cursor estiver posicionado em 
um procedimento, executa também o UserForm se houver um ativo no momento, ou 
executa uma macro.
Interromper: interrompe a execução de uma macro.
Redefi nir: efetua a limpeza da pilha de execução e também das variáveis em nível de 
módulo e redefi ne o projeto.
52
EXCEL 2010 – RECURSOS AVANÇADOS
Ativar/desativar pontos de interrupção (F9): permite defi nir ou retirar um ponto 
de interrupção (uma linha de macro, os pontos de interrupção não são salvos com seu 
código).
Depuração total (F8): permite que o código seja executado, instrução por instrução.
Depuração parcial (Shift + F8): Permite que o código seja executado de cada vez 
na janela Código.
Depuração circular (Ctrl + Shift + F8): permite que as linhas restantes de uma ma-
cro sejam executadas após a localização de ponto de execução atual.
Janela ‘Variáveis locais’: exibe a janela Variáveis locais.
Janela ‘Verifi cação imediata’: exibe a janela Verifi cação imediata.
Janela ‘Inspeção de variáveis’: exibe a janela Inspeção de variáveis.
Inspeção de variáveis rápida (Shift + F9): exibe a janela Inspeção de variáveis 
rápida com o valor atual da expressão.
Pilha de chamadas (Ctrl + F): exibe a janela Chamadas, que apresenta a lista de 
chamadas de procedimento atualmente ativas.
 Agora é com você! 
DEPURAÇÃO DE ERROS
Realize os seguintes passos:
1) Abra a macro Qualidade2.
2) Altere o nome da variável resp para resp$ na linha resp = “”. 
3) O código ficará assim:
Sub QualIdade2()
‘Atalho do teclado: Ctrl+u
Dim resp As Variant
resp$ = “”
53
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
Do While resp <> “S” And resp <> “s” And resp <> “N” And resp <> 
“n”
resp = Application.InputBox(“Você responde certo sua idade: S/N”, , 
, 2)
If resp = False Then
Exit Sub
End If
Loop
If resp = “S” Or resp = “s” Then
MsgBox “Legal”, 48
Else
MsgBox “Péssimo”, 16
End If
End Sub
4) Na barra Depurar, clique no botão Executar macro.
5) Observe a seguinte mensagem de erro: “Caractere de declaração de tipo 
não corresponde ao tipo de dados declarado”
 
6) Faça a correção: altere o nome da variável resp$ para resp na linha resp$ 
= “”.
7) Altere o nome do método InputBox para Input.
8) Clique no botão Executar macro.
9) Observe a seguinte mensagem de erro: “O objeto não aceita esta proprie-
dade ou método”.
 
10) Clique no botão Fim. 
54
EXCEL 2010 – RECURSOS AVANÇADOS
Inspeção de variáveis rápida
11) Faça a correção: altere o nome do método Input para InputBox.
12) Altere a linha If resp = “S” Or resp = “s” Then para If resp = “S” And resp 
= “s” Then.
13) Clique no botão Executar macro. Desta vez não será exibida nenhuma 
mensagem de erro, pois a sintaxe está correta. Mas na hora executar, inde-
pendente da resposta ser S, o Excel interpretará como falsa.
14) Selecione a variável resp.
15) Clique no botão Inspeção de variáveis rápida ou utilize as teclas Shift + F9.
16) Clique no botão Adicionar. 
 
 
Executar depuração
17) Observe na parte debaixo da tela que a variável foi adicionada.
 
18) Posicione o cursor na primeira linha do código: Sub Qualidade2().
19) Pressione F8 para executar a depuração total da macro. O Excel executará 
a macro linha a linha, a cada F8 pressionado. Observe que a linha da resposta 
Positiva não foi verificada, mas não é informada nenhuma mensagem sobre o 
motivo. Esse tipo de erro é difícil de ser detectado. 
20) Faça a correção da linha, alterando o And para Or.
Após realizar a depuração de erros, podem ser encontradas as seguintes ocorrências:
Sintaxe: O erro de sintaxe ocorre quando uma instrução é escrita errada ou há falta de pontuação. 
Normalmente esse tipo de erro é observado pelo sistema no ato da digitação quando a linha fica 
vermelha. Mas quando isso não acontece, o erro só é informado na execução da macro.
Compilação: O erro de sintaxe ocorre quando é esquecido o complemento de uma instrução, nor-
malmente quando há instruções Do While, sem Loop, ou If...Then, sem End If. O Visual Basic analisa 
rapidamente o código antes de processá-lo. Quando encontra um erro de compilação, ele é realçado 
para ser corrigido, além de exibir uma mensagem de erro.
Tempo de execução: O erro de tempo de execução ocorre durante a execução, quando alguma 
instrução ou fórmula não foi entendida pelo VBA. Isso ocorre normalmente quando se utiliza uma 
55
EXCEL 2010 – RECURSOS AVANÇADOSEXCEL 2010 – RECURSOS AVANÇADOS
propriedade ou método com o objeto errado.
Lógica: O erro de lógica é o mais difícil de ser identificado porque o depurador executa a macro 
passo a passo, visualizando a execução de cada linha.

Mais conteúdos dessa disciplina