Sei sulla pagina 1di 25

LEGIÃO DA BOA VONTADE

Diretor-Presidente: José de Paiva Netto

SSE Superintendência Socioeducacional

de Paiva Netto SSE – Superintendência Socioeducacional Este caderno extra para os alunos que fizeram Excel
de Paiva Netto SSE – Superintendência Socioeducacional Este caderno extra para os alunos que fizeram Excel

Este caderno extra para os alunos que fizeram Excel visa criar perspectiva para que façam curso de VBA

JOSSEMILDO DE ALVARENGA DUARTE

P á g i n a ÍNDICE

| 2

O que é VBA (Visual Basic For Application)

Página 3

Como Habilitar a guia Desenvolvedor

Página 3

Exercício Criando uma Macro

Página 4

Parte I (noções de visual basic application)

Página 9

Criando no visual basic nosso formulário (continuação).

Página 9

Criando a linguagem de programação para estas caixas (continuação).

Página 11

Fazendo um teste básico (continuação)

Página 12

Orientando esses nomes modificados em nosso código criado (continuação)

Página 14

Criando rótulos para nossas caixas (continuação)

Página 15

Criando botão de controle para acessar o formulário (continuação)

Página 16

Salvando documento com macro

Página 18

Parte II (noções de visual basic application)

Página 18

Testando a função (continuação)

Página 20

Criando filtros avançados no Excel

Página 21

Fazendo teste para nossa pesquisa (continuação)

Página 24

P á g i n a

| 3

O que é VBA - Visual Basic for Applications

O Visual Basic, ou simplesmente VB, é uma linguagem de programação criada pela Microsoft. Derivada do Visual

Basic, a Microsoft oferece a linguagem VBA - Visual Basic for Applications, para ser utilizada nos programas do

pacote Office. Através da programação em VBA é possível implementar novas ferramentas e rotinas nos programas

do

Office.

pacote

Se o VBA foi feito para o Office, podemos entender que, é possível utilizar o VBA em todos os programas que fazem parte do pacote, tais como: Excel, Access, Word, PowerPoint, Outlook, Project, Sharepoint, Publisher, OneNote e Visio.

Aqui teremos apenas algumas noções sobre VBA, somente para que o aluno verifique novas possibilidades junto ao Excel Avançado. Já que linguagem de programação precisa-se fazer curso específico.

A linguagem de programação Visual Basic Applications, que é da Microsoft, tem esse recurso dentro do seu pacote

office. (MS Word/ MS PPoint/ MS Acess/ MS Excel etc

).

A linguagem VBA serve praticamente para 3 coisas:

1. Automatizar tarefas

2. Criar Fórmulas

3. Desenvolver Sistemas

HABILITANDO A GUIA DESENVOLVER (Gravação de Macro/ Ambiente de criação da linguagem VBA)

Para podermos acessar os recursos e ferramentas de gravação de macros, temos que ativar a guia desenvolvedor.

Passo1: Clique na guia Arquivo, depois em Opções. Veja:

1º 2º

Clicar em

guia Arquivo, depois em Opções. Veja: 1º 2º Clicar em Depois clicar em Passo2: Clicar em

Depois clicar em

Passo2: Clicar em Personalizar Faixa de Opções, marcar a opção Desenvolvedor e depois dê OK. Veja imagem:

marcar a opção Desenvolvedor e depois dê OK. Veja imagem: Clicar em Faixa de opções e

Clicar em Faixa de opções e marcar a opção Desenvolvedor, depois dê OK

Passo3: Na sua tela do Excel já mostrará a guia que pedimos para ativar.

tela do Excel já mostrará a guia que pedimos para ativar. Antes de entrar em introdução

Antes de entrar em introdução a VBA vamos rever Macro, que não deixa de ser uma automação de comandos que precisaremos executar.

P á g i n a

| 4

EXERCÍCIO 1 (CRIANDO UMA MACRO)

Passo1: Abra o aplicativo MS Excel e verifique se está ativado a guia Desenvolvedor, caso não esteja verifique na página anterior como fazê-lo.

Passo2: Digite a planilha abaixo: (É uma planilha para fazer cadastros)

a planilha abaixo: (É uma planilha para fazer cadastros) Passo3: Vamos criar um botão que quando

Passo3: Vamos criar um botão que quando clicarmos nele lançará o cadastro na linha correta, clique na guia inserir/ Formas/ Retângulo Arredondado. Veja imagem:

1º
2º

Clicar nesta opção

Passo4: Quando clicar em retângulo, posicione o mouse no endereço G1, clique segure e arraste o mouse para definir o tamanho. Veja imagem:

e arraste o mouse para definir o tamanho. Veja imagem: OBSERVAÇÃO: Lembre-se quando tiver criando formas,

OBSERVAÇÃO: Lembre-se quando tiver criando formas, use a guia Formatar para dar uma melhor aparência a seus botões.

Passo5: Clique na guia Desenvolvedor e deixe a ferramenta Usar Ferramentas Relativas Desmarcada. Veja:

1º
2º

Deixar essa ferramenta: Usar Ferramentas Relativas desmarcada

GRAVANDO NOSSA MACRO (CONTINUAÇÃO)

Passo6: Digite na célula E2: Arthus em F2: 16, depois dê Enter. Como na imagem:

Digite na célula E2: Arthus em F2: 16, depois dê Enter. Como na imagem: Passo7: Clique

Passo7: Clique na Ferramenta Gravar Macro:

Digite na célula E2: Arthus em F2: 16, depois dê Enter. Como na imagem: Passo7: Clique

P á g i n a

| 5

Passo8: Mostra uma caixa de diálogo de Gravar Macro, preencha como mostra a imagem:

de diálogo de Gravar Macro, preencha como mostra a imagem: Vamos dar o nome de nossa

Vamos dar o nome de nossa macro de: Cadastro. Escreva Aqui

Vamos dar o nome de nossa macro de: Cadastro. Escreva Aqui Vamos definir teclas de atalhos
Vamos dar o nome de nossa macro de: Cadastro. Escreva Aqui Vamos definir teclas de atalhos

Vamos definir teclas de atalhos quando quisermos executá-la. Digite q aqui

Vamos definir onde queremos gravar essa macro, deixe na opção: Esta pasta de trabalho

gravar essa macro, deixe na opção: Esta pasta de trabalho Vamos definir para quê serve essa

Vamos definir para quê serve essa macro, em seguida daremos OK

OBSERVAÇÃO: Ao darmos OK tudo que fizermos o Excel estará gravando e transformará em código, portanto cuidado para não errar nenhum dos próximos passos.

Passo9: Selecione de E2 a F2

Passo10: Pressione as teclas CTRL + C (para fazer uma cópia deste conteúdo)

Passo11: Clique em A1

Passo12: Clicar na ferramenta Usar Ferramentas Relativas

Passo13: Pressione as teclas CRTL + Seta para baixo (para ir para última linha)

Passo14: Solte a tecla CTRL, e agora pressione uma vez a seta para baixo (para ir para a linha vazia)

Passo15: Pressione as teclas CTRL + V (para Colar o conteúdo)

Passo16: Desmarcar a ferramenta Usar Ferramentas Relativas

Passo16: Desmarcar a ferramenta Usar Ferramentas Relativas Desmarque esta ferramenta Passo17: Selecione de novo de E2
Passo16: Desmarcar a ferramenta Usar Ferramentas Relativas Desmarque esta ferramenta Passo17: Selecione de novo de E2

Desmarque esta ferramenta

Passo17: Selecione de novo de E2 á F2

Passo18: Em seguida pressione a tecla DELETE (para apagar o conteúdo)

Passo19: Depois clique em E2

Passo20: Agora precisamos para a gravação da macro, clique na ferramenta parar gravação. Veja imagem:

Passo21: Agora vamos fazer o botão Cadastrar, funcionar com essa macro, clique com botão direito sobre o botão e depois em atribuir macro. Veja imagem:

sobre o botão e depois em atribuir macro. Veja imagem: Clicar com botão direito do mouse
sobre o botão e depois em atribuir macro. Veja imagem: Clicar com botão direito do mouse

Clicar com botão direito do mouse sobre o botão Cadastrar

Clicar no comando que vai vincular nossa macro ao botão

Clicar com botão direito do mouse sobre o botão Cadastrar Clicar no comando que vai vincular

P á g i n a

| 6

Passo22: Na caixa de diálogo seguinte mostrará o nome da nossa macro que gravamos, selecione e dê Ok. Veja:

nome da nossa macro que gravamos, selecione e dê Ok. Veja: Clique no nome da macro

Clique no nome da macro que gravamos anteriormente

Ok. Veja: Clique no nome da macro que gravamos anteriormente Clique em OK para fazer a

Clique em OK para fazer a confirmação

anteriormente Clique em OK para fazer a confirmação VERIFICANDO O FUNCIONAMENTO (CONTINUAÇÃO) Passo23: Digite

VERIFICANDO O FUNCIONAMENTO (CONTINUAÇÃO)

Passo23: Digite em E2: Paulo

Passo24: Digite em F2: 13

Passo25: Clique no botão Cadastrar

Passo26: Faça mais dois lançamentos de alunos e veja o resultado:

Faça mais dois lançamentos de alunos e veja o resultado: VERIFICANDO ONDE NOSSA MACRO FICOU ARMAZENADA

VERIFICANDO ONDE NOSSA MACRO FICOU ARMAZENADA

Passo1: Clique na guia Desenvolvedor, clique na ferramenta Visual Basic

Passo2: Mostra a janela do Visual Basic. Veja:

Visual Basic Passo2: Mostra a janela do Visual Basic. Veja: J P A R N O
J P A R N O Macro fica armazenada dentro de Módulos, para mostrar clique
J
P
A
R
N
O
Macro fica armazenada dentro de Módulos, para
mostrar clique no sinal de + e depois dois cliques
rápidos em Módulo1
E
J
L
E
A
T
O
S

P á g i n a

| 7

Observação: No lado direito mostrará todo os comandos representados em modo de códigos que foram gravados pela macro. Veja imagem:

modo de códigos que foram gravados pela macro. Veja imagem: Todo conteúdo executado por nossa Macro
modo de códigos que foram gravados pela macro. Veja imagem: Todo conteúdo executado por nossa Macro
Todo conteúdo executado por nossa Macro

Todo conteúdo executado por nossa Macro

Regras:

Toda Macro começa com a palavra Sub e termina com a palavra End Sub

Em seguida os comentários que fizemos na caixa de diálogo:

' Cadastro Macro

' Faz o cadastro

' Atalho do teclado: Ctrl+q

Em seguida todas as ações que mandamos executar quando estava gravando a Macro:

COMANDOS

SIGNIFICADOS

Range("E2:F2").Select

Range (célula) Então selecionar de E2 a F2

Selection.Copy

Copiar a seleção

Range("A1").Select

Selecionar A1

Selection.End(xlDown).Select

Quando usamos a ferramenta: Usar ferramentas relativas Em seguida usamos CTRL + Seta para baixo

ActiveCell.Offset(1, 0).Range("A1").Select

Depois da célula ativa ele vai se deslocar 1 linha para baixo Quando usamos somente: Seta para baixo

ActiveSheet.Paste

Quando utilizamos as teclas CTRL + V para Colar o conteúdo que foi copiado

Range("E2:F2").Select

Selecionar as células de E2 a F2

Application.CutCopyMode = False

Para retirar os pontilhados piscando na célula

Selection.ClearContents

Quando pressionamos a tecla DELETE para apagar o conteúdo

Range("E2").Select

Quando selecionamos a tecla E2

VENDO NA PRÁTICA O FUNCIONAMENTO, USAREMOS A TECLA F8 PARA EXECUTAR PASSO A PASSO O QUE ESTÁ NESTA TABELA.

Passo1: antes vamos ter que ir para janela no nosso cadastro, na barra de tarefas do Windows clique no nosso cadastro. Veja imagem:

de tarefas do Windows clique no nosso cadastro. Veja imagem: Clicar na barra de tarefas no

Clicar na barra de tarefas no símbolo do Excel

Janela do Cadastro

Janela do VBA

clique no nosso cadastro. Veja imagem: Clicar na barra de tarefas no símbolo do Excel Janela

P á g i n a

| 8

Passo2:

Passo3: Clique na ferramenta do Visual Basic.

Passo4: No canto direito da janela clique em restaurar, para que fique reduzida e possamos sobrepor a janela do cadastro. Precisaremos ver as duas janelas ao mesmo tempo. Veja imagem:

Digite em E2: Henrique e em F2: 12

mesmo tempo. Veja imagem: Digite em E2: Henrique e em F2: 12 Use este formato para

Use este formato para dimensionar sua janela

Janela do nosso cadastro Janela da nossa Macro
Janela do
nosso cadastro
Janela da nossa
Macro

Passo5: Clique dentro da janela da macro para ativá-la.

Passo6: Vamos apenas utilizar a tecla F8, que veremos os comandos entrarem em ação. Observe:

F8, que veremos os comandos entrarem em ação. Observe: A cada mudança que vamos executando com

A cada mudança que vamos executando com F8, mostra a ação que está ocorrendo na planilha

Observação: Então note com esse exercício de Macro, que o Excel grava todos os comandos e os transforma em códigos de execução em VBA.

FIM DO EXERCÍCIO DA MACRO

PARTE I (NOÇÕES DE VISUAL BASIC APPLICATION)

O PRÓXIMO EXERCÍCIO ENTRARÁ NO MÉRITO DA CONSTRUÇÃO EM SÍ DOS CÓDIGOS, APENAS PARA CRIAR UMA EXPECTATIVA EM FAZER ESTE CURSO.

Passo1: Abra seu MS Excel, dê dois cliques rápidos sobre Plan1 e mude esse nome para cadastro. Veja:

rápidos sobre Plan1 e mude esse nome para cadastro. Veja: Antes Depois Passo2: Vamos digitar a

Antes

sobre Plan1 e mude esse nome para cadastro. Veja: Antes Depois Passo2: Vamos digitar a planilha

Depois

Passo2: Vamos digitar a planilha seguinte, apenas como exemplo:

P á g i n a

| 9

P á g i n a | 9 Objetivo: Criar um formulário, que ao digitarmos o

Objetivo: Criar um formulário, que ao digitarmos o código do produto ele me retorne todos os outros campos como: Produto/ Unidade/ Quantidade/ Valor Unit./ Valor Total. E havendo necessidade poder-mos fazer alterações neste campos.

CRIANDO NO VISUAL BASIC NOSSO FORMULÁRIO (CONTINUAÇÃO).

Passo3: Após digitar nossa planilha de exemplo, na guia Desenvolvedor, clique na ferramenta Visual Basic

na guia Desenvolvedor, clique na ferramenta Visual Basic ou se quiser ativar essa janela pelo teclado,

ou se quiser ativar essa janela pelo teclado, você pode combinar as teclas: ALT + F11.

Passo4: Vamos começar criando nosso formulário, portanto a partir da tela do Visual Basic, clique na guia Inserir/ UserForm (Usar Formulário). Veja:

clique na guia Inserir/ UserForm (Usar Formulário). Veja: Clicar na guia Inserir Clicar na ferramenta UserForm

Clicar na guia Inserir

Clicar na ferramenta UserForm

Veja: Clicar na guia Inserir Clicar na ferramenta UserForm Passo5: Uma caixa de formulário já estará
Veja: Clicar na guia Inserir Clicar na ferramenta UserForm Passo5: Uma caixa de formulário já estará

Passo5: Uma caixa de formulário já estará mostrando em sua tela, aumente um pouco a largura e altura, para que possamos desenvolver o conteúdo. Veja imagem:

ÁREA DE NOSSO FORMULÁRIO
ÁREA DE NOSSO FORMULÁRIO

Caixa de Ferramentas para nosso formulário

FORMULÁRIO Caixa de Ferramentas para nosso formulário Posicione o mouse nos pontos de seleção para aumentar
FORMULÁRIO Caixa de Ferramentas para nosso formulário Posicione o mouse nos pontos de seleção para aumentar

Posicione o mouse nos pontos de seleção para aumentar nossa caixa de formulário. Clique segure e arraste

P á g i n a

| 10

Passo6: Vamos criar dentro do formulário uma caixa de texto que é onde vamos digitar os códigos para serem achados os conteúdos referentes. Na caixa de ferramentas ao lado do formulário, clique em caixa de texto, leve o mouse para dentro do formulário, clique segura e arraste para dar o tamanho. Veja imagem:

Posicione o mouse no formulário, clique segure e arraste para dar o tamanho da sua
Posicione o mouse no formulário,
clique segure e arraste para dar o
tamanho da sua caixa
Clicar na ferramenta Caixa de Texto

Passo7: Vamos abrir outra que vai retornar o produto referente ao código. Use a mesma ferramenta. Veja imagem:

referente ao código. Use a mesma ferramenta. Veja imagem: Passo8: Precisamos dar nome as estas caixas,

Passo8: Precisamos dar nome as estas caixas, clique na primeira caixa que criamos, para selecionar, no lado esquerdo na opção (Name), o que está escrito à frente apague e digite txt_codigo. Veja imagem:

1º
2º 3º
frente apague e digite txt_codigo. Veja imagem: 1º 2º 3º Trocar esse nome por este nome

Trocar esse nome por este nome

Clicar na caixa do código

Passo9: Repita o processo para nossa segunda caixa que vai ter o nome txt_produto

para nossa segunda caixa que vai ter o nome txt_produto Caixa do produto Terá esse nome

Caixa do produto

caixa que vai ter o nome txt_produto Caixa do produto Terá esse nome Observação: É muito

Terá esse nome

Observação: É muito importante que as caixas que criarmos no formulário, darmos nomes para elas. Se usar nome com mais de uma palavra não dê espaços, use anderline ( _ ).

CRIANDO A LINGUAGEM DE PROGRAMAÇÃO PARA ESTAS CAIXAS (CONTINUAÇÃO).

Passo10: Vamos programar a primeira caixa de texto que é para quando digitarmos o código. Dê 2 cliques rápido em cima da caixa, a tela mudará para criamos a codificação, faça a mudança conforme imagem:

1º

Aqui vamos mudar do modo Change para o modo AfterUpdate

a mudança conforme imagem: 1º Aqui vamos mudar do modo Change para o modo AfterUpdate 2º
2º

Aqui montaremos o código

P á g i n a

| 11

Passo11: Vamos digitar os códigos conforme mostra abaixo. Digite:

Private Sub txt_codigo_AfterUpdate()

Dim intervalo As Range

Dim texto As String

Dim codigo As Integer

Dim pesquisa

Dim mensagem

Já tem esta linha pronta

Integer Dim pesquisa Dim mensagem Já tem esta linha pronta Variáveis que temos que criar Caixa

Variáveis que temos que criar

Caixa onde vamos digitar o código

que temos que criar Caixa onde vamos digitar o código codigo = txt_codigo Sheets("cadastro").Select Set

codigo = txt_codigo

Sheets("cadastro").Select

Set intervalo = Range("A2:F500")

On Error GoTo Erro

pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 2, False)

Seleção relativa a planilha cadastro

intervalo, 2, False) Seleção relativa a planilha cadastro Intervalos a serem verificados Linha de tratamento de

Intervalos a serem verificados

Linha de tratamento de erro, caso encontre algum erro

Linha de tratamento de erro, caso encontre algum erro O resultado da pesquisa do código, será
Linha de tratamento de erro, caso encontre algum erro O resultado da pesquisa do código, será
O resultado da pesquisa do código, será colocado na caixa produto Saída do comando
O resultado da pesquisa do código, será colocado na caixa produto
Saída do comando

O que queremos caso encontre erro

txt_produto = pesquisa

Exit Sub

Erro:

texto = "Não foi localizado nenhum código com este valor

mensagem = MsgBox(texto, vbOKOnly + vbInformation)

valor mensagem = MsgBox(texto, vbOKOnly + vbInformation) " End Sub Comando para finalizar o processo FAZENDO
valor mensagem = MsgBox(texto, vbOKOnly + vbInformation) " End Sub Comando para finalizar o processo FAZENDO
"
"

End Sub

Comando para finalizar o processo

" End Sub Comando para finalizar o processo FAZENDO UM TESTE BÁSICO (CONTINUAÇÃO) Passo12: Vamos

FAZENDO UM TESTE BÁSICO (CONTINUAÇÃO)

Passo12: Vamos verificar se realmente está funcionando nossa caixa. Clique no símbolo Executar UserForm. Veja imagem:

Clicar nesta ferramenta para testar

UserForm. Veja imagem: Clicar nesta ferramenta para testar Passo13: Mostrará a planilha de nosso cadastro feito

Passo13: Mostrará a planilha de nosso cadastro feito e mais a caixa de formulário que estamos construindo, procure puxa a caixa para que fique visível todo cadastro e a caixa. Veja imagem:

P á g i n a

| 12

Campo para digitar o código do produto Campo que irá aparecer o resultado do produto
Campo para digitar o
código do produto
Campo que irá aparecer o resultado
do produto de acordo com o código

Passo14: Faça um teste digite no campo código: 1020 e depois dê Enter

Passo15: Agora digite: 1050 e dê Enter

Passo16: Agora vamos digitar um código que não temos: 1070 e dê Enter, irá mostrar nossa caixa de erro. Veja imagem:

e dê Enter, irá mostrar nossa caixa de erro. Veja imagem: Passo17: Vamos voltar no nosso

Passo17: Vamos voltar no nosso formulário VBA, vamos criar mais 4 caixas de texto para: Unidade/ Quantidade/ Valor Unitário/ Valor Total. Veja imagem:

Quantidade/ Valor Unitário/ Valor Total. Veja imagem: Crie mais estas 4 caixas de textos LOCALIZANDO OS

Crie mais estas 4 caixas de textos

LOCALIZANDO OS OUTROS CAMPOS (CONTINUAÇÃO)

Passo18: Precisamos criar as outras pesquisas para os campos: Volte em seu VBA (ALT + F11)

Passo19: Dê 2 cliques rápidos na caixa de texto Código, para retornar na nossa tela de códigos criados

P á g i n a

| 13

Pass20: Acrescente mais 4 pesquisas, conforme mostra imagem:

Aqui acrescente mais estas quatro pesquisas que servirão para: Unidade/ Quantidade/ Valor Unitário e Valor
Aqui acrescente mais estas quatro pesquisas que servirão para:
Unidade/ Quantidade/ Valor Unitário e Valor Total

Passo21: No campo de cima pesquisa, só precisamos copiar e colar para estruturar as 4 novas pesquisas que solicitamos. Veja imagem:

as 4 novas pesquisas que solicitamos. Veja imagem: Passo22: Depois de selecionar combine as teclas CTRL

Passo22: Depois de selecionar combine as teclas CTRL + C (para copiar)

Passo23: Posicione o cursor pesquisa1 e combine as teclas CTRL + V (para colar)

Passo24: Repita o processo de colar na frente dos campos: pesquisa2, pesquisa3 e pesquisa4. Veja imagem:

dos campos: pesquisa2, pesquisa3 e pesquisa4. Veja imagem: Passo25: Agora só precisamos trocar os valores

Passo25: Agora só precisamos trocar os valores correspondente as colunas que queremos a pesquisa. Veja imagem:

as colunas que queremos a pesquisa. Veja imagem: Corrigir somente os valores correspondentes as colunas que
as colunas que queremos a pesquisa. Veja imagem: Corrigir somente os valores correspondentes as colunas que

Corrigir somente os valores correspondentes as colunas que queremos

Passo26: Vamos mudar os nomes das novas caixas de testos que pedimos. Dê 2 cliques rápidos no lado esquerdo na área de projetos em UseForm1. Veja imagem:

lado esquerdo na área de projetos em UseForm1. Veja imagem: 2 cliques rápidos aqui (lado esquerdo)

2 cliques rápidos aqui (lado esquerdo)

Passo27: em nosso formulário do lado direito, selecione a segunda caixa de texto. Veja:

Clique para selecionar

esquerdo) Passo27: em nosso formulário do lado direito, selecione a segunda caixa de texto. Veja: Clique

P á g i n a

| 14

Passo28: Após selecionar a caixa, no lado direito na opção (Name), vamos alterar para: txt_unidade. Veja:

na opção (Name), vamos alterar para: txt_unidade. Veja: Coloque este nome Passo29: Repita o processo de

Coloque este nome

vamos alterar para: txt_unidade. Veja: Coloque este nome Passo29: Repita o processo de selecionar a próximas

Passo29: Repita o processo de selecionar a próximas caixas, que deverá ficar com estes nomes:

a próximas caixas, que deverá ficar com estes nomes: txt_quantidade txt_valor_unitario txt_total ORIENTANDO ESSES

txt_quantidade

caixas, que deverá ficar com estes nomes: txt_quantidade txt_valor_unitario txt_total ORIENTANDO ESSES NOMES

txt_valor_unitario

ficar com estes nomes: txt_quantidade txt_valor_unitario txt_total ORIENTANDO ESSES NOMES MODIFICADOS EM NOSSO

txt_total

ORIENTANDO ESSES NOMES MODIFICADOS EM NOSSO CÓDIGO CRIADO (CONTINUAÇÃO)

Passo30: Dê dois cliques rápidos na caixa do nosso código para voltar a nossa programação. Posicione o cursor depois da linha onde está: txt_produto = pesquisa, dê enter, depois digite: txt_unidade = pesquisa1. Veja imagem:

enter, depois digite: txt_unidade = pesquisa1. Veja imagem: Acrescente estas modificações nas linhas FAZENDO TESTE

Acrescente estas modificações nas linhas

FAZENDO TESTE (CONTINUAÇÃO)

Passo31: Agora vamos fazer o teste para verificar se realmente está achando todos os campos através da digitação de nosso código. Clique na ferramenta Executar UseForm1: Veja imagem:

Clique na ferramenta Executar UseForm1: Veja imagem: Clicar na ferramenta para fazer o teste Passo32: No
Clique na ferramenta Executar UseForm1: Veja imagem: Clicar na ferramenta para fazer o teste Passo32: No

Clicar na ferramenta para fazer o teste

Passo32: No campo do código, digite: 1020 e dê enter. Veja imagem:

Resultados obtidos
Resultados obtidos

Digite o código: 1020 e dê Enter

P á g i n a

| 15

CRIANDO RÓTULOS PARA NOSSAS CAIXAS (CONTINUAÇÃO)

Passo33: Para que fique mais fácil entender os conteúdos das caixas vamos criar rótulos. Fecha a caixa da nossa pesquisa, pressione as teclas ALT + F11

Passo34: Voltará para tela do VBA com nosso formulário a vista. No lado esquerdo na caixa de ferramentas clique em Rótulo. Veja imagem:

Traga o mouse aqui, posicione, clique segure e arraste. Ficará assim:

aqui, posicione, clique segure e arraste. Ficará assim: Clique na ferramenta Rótulo Passo35: Para tirar esse

Clique na ferramenta Rótulo

e arraste. Ficará assim: Clique na ferramenta Rótulo Passo35: Para tirar esse nome do rótulo Label1,

Passo35: Para tirar esse nome do rótulo Label1, deixe selecionado e do lado esquerdo na opção (Caption), à frente digite: Código. Veja imagem:

opção (Caption), à frente digite: Código. Veja imagem: Digite aqui: Código Observação: Ao modificarmos este

Digite aqui: Código

Observação: Ao modificarmos este rótulo observe que no formulário já foi alterado. Veja:

rótulo observe que no formulário já foi alterado. Veja: Passo36: Repita o mesmo processo para fazer
rótulo observe que no formulário já foi alterado. Veja: Passo36: Repita o mesmo processo para fazer

Passo36: Repita o mesmo processo para fazer os demais rótulos, seu formulário deverá ficar assim:

os demais rótulos, seu formulário deverá ficar assim: CRIANDO BOTÃO DE CONTROLE PARA ACESSAR O FORMULÁRIO

CRIANDO BOTÃO DE CONTROLE PARA ACESSAR O FORMULÁRIO (CONTINUAÇÃO)

Passo1: Precisamos criar um botão de controle, que ao clicarmos abrirá este formulário. Na guia Desenvolvedor, clique na ferramenta inserir. Veja imagem:

P á g i n a

| 16

1º
2º
P á g i n a | 16 1º 2º Clicar inserir e depois na ferramenta

Clicar inserir e depois na ferramenta Botão (controle de Formulário)

e depois na ferramenta Botão (controle de Formulário) Passo2: Ao lado da sua planilha clique segura

Passo2: Ao lado da sua planilha clique segura e arraste para dar o tamanho ao botão.

Passo3: Na caixa de diálogo seguinte, coloque no nome botão_formulario, depois clique em novo. Veja imagem:

nome botão_formulario, depois clique em novo. Veja imagem: Nome da macro digite: botão_formulario Clique no botão

Nome da macro digite: botão_formulario

novo. Veja imagem: Nome da macro digite: botão_formulario Clique no botão Novo Passo4: Abrirá a tela

Clique no botão Novo

Passo4: Abrirá a tela do Visual Basic, preencha com o seguinte comando. Veja imagem:

Visual Basic, preencha com o seguinte comando. Veja imagem: Coloque esta instrução para executar o formulário

Coloque esta instrução para executar o formulário

imagem: Coloque esta instrução para executar o formulário Passo4: Vamos verificar se funciona, volte na tela

Passo4: Vamos verificar se funciona, volte na tela da sua planilha, clicando sobre o ícone na barra de tarefas do Windows. Veja:

TELA NOSSA PLANILHA TELA VBA
TELA NOSSA PLANILHA
TELA VBA

Posicionar o mouse sobre o ícone do Excel, clicar na tela de sua planilha

Passo5: Clique sobre o botão que criamos, terá que abrir o nosso formulário.

P á g i n a

| 17

RENOMEANDO O RÓTULO DO NOSSO BOTÃO

Passo1: clique com botão direto do mouse sobre o botão que criamos, depois em Editar texto. Veja:

sobre o botão que criamos, depois em Editar texto. Veja: Clicar com botão direito do mouse
sobre o botão que criamos, depois em Editar texto. Veja: Clicar com botão direito do mouse

Clicar com botão direito do mouse sobre o botão

Clicar em Editar Texto

Passo2: Apague o nome que está e escreva: FORMULÁRIO

Texto Passo2: Apague o nome que está e escreva: FORMULÁRIO SALVANDO DOCUMENTO COM MACRO Passo1: Como
Texto Passo2: Apague o nome que está e escreva: FORMULÁRIO SALVANDO DOCUMENTO COM MACRO Passo1: Como

SALVANDO DOCUMENTO COM MACRO

Passo1: Como dentro deste documento existe Macro, teremos que salvar habilitando para a mesma, se não a Macro não funcionará. Clique em Arquivo/ Salvar Como

Passo2: Na caixa de diálogo seguinte, siga instruções conforme imagem:

de diálogo seguinte, siga instruções conforme imagem: Vamos salvar na pasta Documentos Salvar com o nome:
de diálogo seguinte, siga instruções conforme imagem: Vamos salvar na pasta Documentos Salvar com o nome:

Vamos salvar na pasta Documentos

Salvar com o nome: Treinamento em VBA

na pasta Documentos Salvar com o nome: Treinamento em VBA Como em nossa planilha tem Macro

Como em nossa planilha tem Macro ou código de programação em VBA, teremos que Habilitar para Macro. Clique na seta para baixo para achar

Clicar no botão Salvar

Clique na seta para baixo para achar Clicar no botão Salvar PARTE II (NOÇÕES DE VISUAL

PARTE II (NOÇÕES DE VISUAL BASIC APPLICATION)

NESTA SEGUNDA PARTE USANDO A MESMA PLANILHA PARA TREINAMENTO, VAMOS VER COMO DEPOIS QUE ACHARMOS O PRODUTO ATRAVÉS DO CÓDIGO DIGITADO, PODEREMOS FAZER ALTERAÇÕES NA PLANILHA USANDO O MESMO FORMULÁRIO.

Passo1: Reabra seu arquivo do exercício anterior, que salvamos com nome de Treinamento em VBA

Passo2: Ative o Visal Basic com as teclas ALT + F11

Passo3: Vamos ativar nosso formulário UserForm1, dê dois cliques rápidos nesta função do lado esquerdo.

dê dois cliques rápidos nesta função do lado esquerdo. Dar 2 cliques rápidos para ativar nosso

Dar 2 cliques rápidos para ativar nosso formulário.

dê dois cliques rápidos nesta função do lado esquerdo. Dar 2 cliques rápidos para ativar nosso

P á g i n a

| 18

Passo4: Vamos criar um botão de controle para fazer atualizações, Na caixa de Ferramentas na opção dos contoles, clique em botão de controle/ Vá no formulário clique e arraste para dar o tamanho. Veja:

no formulário clique e arraste para dar o tamanho. Veja: Clicar em Botão de Clicar segurar

Clicar em Botão de

Clicar segurar o botaão e arrastar

Clicar em Botão de Clicar segurar o botaão e arrastar Passo5: Clique dentro do botão e
Clicar em Botão de Clicar segurar o botaão e arrastar Passo5: Clique dentro do botão e

Passo5: Clique dentro do botão e modifique o nome para ATUALIZAR.

Clique dentro do botão e modifique o nome para ATUALIZAR. Passo6: Vamos modificar também seu (Name),

Passo6: Vamos modificar também seu (Name), clique nesta opção do lado esquerdo e coloque btn_atualiza. Veja imagem:

do lado esquerdo e coloque btn_atualiza. Veja imagem: Antes Depois Passo7: Agora vamos entrar no código

Antes

do lado esquerdo e coloque btn_atualiza. Veja imagem: Antes Depois Passo7: Agora vamos entrar no código

Depois

Passo7: Agora vamos entrar no código deste botão. Dê 2 cliques rápidos em cima do botão Atualizar, a tela mostrará o código. Veja imagem:

botão Atualizar, a tela mostrará o código. Veja imagem: Início da instrução já pronta Passo8: Vamos
botão Atualizar, a tela mostrará o código. Veja imagem: Início da instrução já pronta Passo8: Vamos

Início da instrução já pronta

Passo8: Vamos montar os códigos abaixo:

Private Sub btn_atualiza_Click()

montar os códigos abaixo: Private Sub btn_atualiza_Click() 'Criando nossa variáveis Linhas que usamos para
montar os códigos abaixo: Private Sub btn_atualiza_Click() 'Criando nossa variáveis Linhas que usamos para

'Criando nossa variáveis

Linhas que usamos para orientação dos códigos

Dim codigo As Integer

Dim quantidade As Double

Dim valor As Currency

Variáveis que utilizaremos Integer = números inteiros Double = + de 7 casas decimais(-/+) Currency
Variáveis que utilizaremos
Integer = números inteiros
Double = + de 7 casas decimais(-/+)
Currency = Moeda corrente

'Atribuição das variáveis

linha = 2

codigo = txt_codigo

quantidade = txt_quantidade

valor = txt_valor_unitario

= txt_codigo quantidade = txt_quantidade valor = txt_valor_unitario Os valores atribuídos as variáveis criadas acima

Os valores atribuídos as variáveis criadas acima

P á g i n a

| 19

Criar um Loop de verificação na planilha cadastro

Para selecionar a guia cadastro

na planilha cadastro Para selecionar a guia cadastro Sheets("cadastro").Select Do Until

Sheets("cadastro").Select

Do Until Sheets("cadastro").Cells(linha, 1) = ""

Para executar o código na planilha cadastro, nestas referências, até encontrar coluna vazia e parar de executar. “”

até encontrar coluna vazia e parar de executar. “” 'Condição para Localizar o código If

'Condição para Localizar o código

If Sheets("cadastro").Cells(linha, 1) = codigo Then

If Sheets("cadastro").Cells(linha, 1) = codigo Then Se ele encontrar nesta planilha na linha 2 e coluna

Se ele encontrar nesta planilha na linha 2 e coluna 1 valores, então é para executar:

Então vai selecionar esta célula

Então vai selecionar esta célula E deslocar estes valores para 1 coluna para direita Ele vai

E deslocar estes valores para 1 coluna para direita

Ele vai atribuir o valor do que tem na caixa txt_produto

Ele vai atribuir o valor do que tem na caixa txt_produto

E

deslocar estes valores para 1 coluna para direita

Ele vai atribuir o valor do que tem na caixa txt_unidade

Ele vai atribuir o valor do que tem na caixa txt_unidade

E

deslocar estes valores para 1 coluna para direita

Ele vai atribuir o valor do que tem na caixa quantidade

E deslocar estes valores para 1 coluna para direita

Ele vai atribuir o valor do que tem na caixa valor

Sheets("cadastro").Cells(linha, 1).Select

ActiveCell.Offset(0, 1).Select

ActiveCell = txt_produto

ActiveCell.Offset(0, 1).Select

ActiveCell = txt_unidade

ActiveCell.Offset(0, 1).Select

ActiveCell = quantidade

ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor
ActiveCell.Offset(0, 1).Select ActiveCell = quantidade ActiveCell.Offset(0, 1).Select ActiveCell = valor

ActiveCell.Offset(0, 1).Select

ActiveCell = valor

ActiveCell.Offset(0, 1).Select

ActiveCell.FormulaR1C1 = "=RC[-2]*RC[-1]"

MsgBox ("Dados Alterados com sucesso!!!")

MsgBox ("Dados Alterados com sucesso!!!") E deslocar estes valores para 1 coluna para direita Ele vai

E deslocar estes valores para 1 coluna para direita

E deslocar estes valores para 1 coluna para direita Ele vai executar a fórmula de multiplicação

Ele vai executar a fórmula de multiplicação

Caixa de mensagem que queremos que apareça, quando fizer atualização

End If

linha = linha + 1

Loop

Finalizando a condição

End If linha = linha + 1 Loop Finalizando a condição Continuar executando 1 linha a

Continuar executando 1 linha a mais, até encontrar uma vazia

executando 1 linha a mais, até encontrar uma vazia Chamando para executar essa Macro no formulário

Chamando para executar essa Macro no formulário na caixa código

Finalizando a instrução

para executar essa Macro no formulário na caixa código Finalizando a instrução Call txt_codigo_AfterUpdate End Sub

Call txt_codigo_AfterUpdate

End Sub

para executar essa Macro no formulário na caixa código Finalizando a instrução Call txt_codigo_AfterUpdate End Sub

P á g i n a

| 20

TESTANDO A FUNÇÃO (CONTINUAÇÃO)

Passo9: Após finalizar os códigos, para testar clique na ferramenra Executar Sub/UserForm

para testar clique na ferramenra Executar Sub/UserForm Clicar nesta ferramenta para testas o código Digite o
para testar clique na ferramenra Executar Sub/UserForm Clicar nesta ferramenta para testas o código Digite o

Clicar nesta ferramenta para testas o código

Digite o código 1020 e dê Enter
Digite o código 1020
e dê Enter

Altere a quantidade para 800

Clique em Atualizar

Passo10: Altere o Valor unitário para 0,80 e depois clique em Atualizar. Verifique que foi alterado conforme programado.

Atualizar. Verifique que foi alterado conforme programado. Quantidade e Valor unitário alterados Planilha atualizada.
Quantidade e Valor unitário alterados
Quantidade e Valor
unitário alterados
conforme programado. Quantidade e Valor unitário alterados Planilha atualizada. Passo11: Salve as alterações

Planilha atualizada.

Passo11: Salve as alterações realizados na pasta (Arquivo/ Salvar).

Passo12: Faça algumas alterações que gostaria.

P á g i n a

| 21

CRIANDO FILTROS AVANÇADOS NO EXCEL

VAI FACILITAR FAZER UMA CONSULTA COM OS FILTROS DESEJADOS, CRIANDO CRITÉRIOS E AINDA POSSIBILITANDO CRIAÇÃO DE RELATÓRIOS.

Iremos fazer isso aproveitando nosso arquivo anterior (VBA), vamos abrir este arquivo: Treinamento em VBA

Passo1: Após abrir nosso arquivo, vamos acrescentar mais algumas linhas conforme mostra imagem:

acrescentar mais algumas linhas conforme mostra imagem: Passo2: Após cadastrar o que falta, lance a quantidade

Passo2: Após cadastrar o que falta, lance a quantidade e o Valor unitário, depois arraste a fórmula que já está pronta na coluna Valor Total.

Passo3: Ao lado de nossa planilha, vamos precisar digitar uma planilha para fazer a consulta com os critérios e uma para trazer o resultado. Digite o conteúdo seguinte:

digitar uma planilha para fazer a consulta com os critérios e uma para trazer o resultado.

P á g i n a

| 22

Passo4: Vamos agora partir para criar nosso filtro de pesquisa, clique na guia Dados. Veja:

criar nosso filtro de pesquisa, clique na guia Dados. Veja: Guia Dados Opção para só classificar
criar nosso filtro de pesquisa, clique na guia Dados. Veja: Guia Dados Opção para só classificar

Guia Dados

Opção para só classificar em ordem Crescente ou decrescente

Passo5: Vamos criar uma Macro para automatiza essa função. Clique na guia Desenvolvedor, depois na ferramenta gravar Macro.

na guia Desenvolvedor, depois na ferramenta gravar Macro. Clique na ferramenta Gravar Macro Passo6: Na caixa
na guia Desenvolvedor, depois na ferramenta gravar Macro. Clique na ferramenta Gravar Macro Passo6: Na caixa

Clique na ferramenta Gravar Macro

Passo6: Na caixa da Macro preencha conforme imagem:

Macro Passo6: Na caixa da Macro preencha conforme imagem: Coloque o nome de nossa macro de:
Macro Passo6: Na caixa da Macro preencha conforme imagem: Coloque o nome de nossa macro de:
Macro Passo6: Na caixa da Macro preencha conforme imagem: Coloque o nome de nossa macro de:

Coloque o nome de nossa macro de:

consulta_avancada

Coloque em descrição para quê serve esta macro, em seguida dê OK

Observação: Lembre-se que quando for criar macro não dê espaços em palavras compostas. Cuidado para não errar nenhuma instrução.

Passo7: Vote na guia Dados, clique na ferramenta Avançado. Na caixa de diálogo que mostra, clique na seta vermelha como mostra imagem:

que mostra, clique na seta vermelha como mostra imagem: Clique nessa seta vermelha para a gente

Clique nessa seta vermelha para a gente mostrar os intervalos que queremos selecionar.

para a gente mostrar os intervalos que queremos selecionar. Passo8: Selecione de A1 até F3, como

Passo8: Selecione de A1 até F3, como sendo muito conteúdo pressione as teclas CTRL + SHIFT + Seta para baixo, ele marcará até nossa última linha.

Passo9: Clique de novo na seta vermelha ao lado das referências.

Passo10: em intervalos de critérios, apague se tiver alguma coisa, clique na seta vermelha e selecione o cabeçalho de nossa pesquisa e a linha de baixo. Veja imagem:

e selecione o cabeçalho de nossa pesquisa e a linha de baixo. Veja imagem: Selecione estas

Selecione estas duas linhas na tabela Consulta

P á g i n a

| 23

P á g i n a | 23 Para preencher corretamente, selecione o que mostra pontilhado.

Para preencher corretamente, selecione o que mostra pontilhado. Que vai preencher no campo certo

Passo11: Vamos ativar na caixa a opção Copiar para outro local.

Vamos ativar na caixa a opção Copiar para outro local. Apague se tiver alguma referência aqui

Apague se tiver alguma referência aqui e vamos selecionar somente o título da tabela CRITÉRIO DA CONSULTA

Ative esta opção

o título da tabela CRITÉRIO DA CONSULTA Ative esta opção Passo12: Selecione o que está em

Passo12: Selecione o que está em pontilhado, que automaticamente nossa terceira caixa estrá com as referências.

nossa terceira caixa estrá com as referências. Selecione o que está pontilhado Passo13: Na caixa filtro
nossa terceira caixa estrá com as referências. Selecione o que está pontilhado Passo13: Na caixa filtro

Selecione o que está pontilhado

Passo13: Na caixa filtro Avançado, clique na opção copiar para, então selecione somente os títulos da tabela RESULTADO DA CONSULTA, dê OK para confirmar. Veja imagem:

1º
DA CONSULTA, dê OK para confirmar. Veja imagem: 1º Clicar em Copiar para outro local Clicar
DA CONSULTA, dê OK para confirmar. Veja imagem: 1º Clicar em Copiar para outro local Clicar

Clicar em Copiar para outro local

Veja imagem: 1º Clicar em Copiar para outro local Clicar em Copiar para 2º 3º Selecione

Clicar em Copiar para

2º
3º

Selecione somente os títulos da tabela: RESULTADO DA CONSULTA

somente os títulos da tabela: RESULTADO DA CONSULTA 4º Confirmar em OK Passo14: Vamos para nossa
somente os títulos da tabela: RESULTADO DA CONSULTA 4º Confirmar em OK Passo14: Vamos para nossa
somente os títulos da tabela: RESULTADO DA CONSULTA 4º Confirmar em OK Passo14: Vamos para nossa
4º

Confirmar em OK

Passo14: Vamos para nossa Macro, na barra de status do Excel, clique no botão encerrar macro.

nossa Macro, na barra de status do Excel, clique no botão encerrar macro. Localizado no canto

Localizado no canto inferior esquerdo da tela.

P á g i n a

| 24

Passo15: Precisamos criar um botão para vincular nossa Macro. Clique na Guia Desenvolvedor, depois na ferramenta Botão (controle de formulário)

depois na ferramenta Botão (controle de formulário) Clicar em Inserir Clicar em Botão (controle de formulário)

Clicar em Inserir

Clicar em Botão (controle de formulário)

Clicar em Inserir Clicar em Botão (controle de formulário) Passo16: Clique e arraste o mouse para
Clicar em Inserir Clicar em Botão (controle de formulário) Passo16: Clique e arraste o mouse para

Passo16: Clique e arraste o mouse para criar o botão acima tabela RESULTADO DA PESQUISA:

para criar o botão acima tabela RESULTADO DA PESQUISA: Ao soltar o botão do mouse mostrará
para criar o botão acima tabela RESULTADO DA PESQUISA: Ao soltar o botão do mouse mostrará

Ao soltar o botão do mouse mostrará a caixa atribuir macro

Clique no nome que demos a nossa macro

Clique em OK para confirmar

no nome que demos a nossa macro Clique em OK para confirmar Passo16: Clique dentro do
no nome que demos a nossa macro Clique em OK para confirmar Passo16: Clique dentro do

Passo16: Clique dentro do botão, apague o texto e digite:

Passo16: Clique dentro do botão, apague o texto e digite: FAZENDO TESTE PARA NOSSA PESQUISA (CONTINUAÇÃO)

FAZENDO TESTE PARA NOSSA PESQUISA (CONTINUAÇÃO)

Passo17: Supondo que estou fazendo um relatório sobre meu estoque e quero saber quais tipos de cadernos tem e a quantidade. Na tabela de Consulta clique no campo abaixo onde está Produto e digite: Caderno, em seguida clique no botão: Clique para executar a consulta. Veja imagem:

1º Digite Caderno neste campo 2º Clique para pesquisar Resultado extraído da nossa base de
Digite Caderno neste campo
Clique para pesquisar
Resultado extraído da nossa base de dados

P á g i n a

| 25

Passo18: Supomos agora que, queremos saber de todas as mercadorias quais que tem menos de 50 em estoque. Digite no campo de pesquisa quantidade: <50, depois clique no botão para pesquisar. Veja imagem:

1º Digite: <50 neste campo 2º Clique para pesquisar Resultado extraído da nossa base de
Digite: <50 neste campo
Clique para pesquisar
Resultado extraído da nossa base de dados

FIM DO EXERCÍCIO

SOMOS RESULTADO DAQUILO QUE PENSAMOS
SOMOS RESULTADO DAQUILO QUE
PENSAMOS