Você está na página 1de 99

Olá pessoal!

Na dica de hoje vou ensinar como criar uma tela de login no Excel. A tela de login é
importante pois permite que apenas pessoas autorizadas tenham acesso ao seu sistema,
existem diversas maneiras de proteger uma pasta de trabalho do Excel, porém a tela de login,
deixa sua planilha com uma cara de sistema avançado, modificando a interação do usuário e
tornando sua planilha mais profissional, o código vba permite isso tipo de coisa, ou seja, criar
planilhas com recursos de sistemas avançados.
Vamos lá!
Abra o seu arquivo do Excel.
Pressione Alt+F11 para abrir a janela do VBA.
O primeiro passo é adicionar um Formulário.
Clique no menu inserir, após isso, clique em Userform.
Será criado um novo formulário chamado Userform1.

Devemos adicionar os objetos que serão utilizados para a criação da tela de login.
Vamos utilizar Rótulos, Caixas de texto e Botões.
Explicando:
Rótulo: utilizados como legendas, ajudam na identificação do campo.
Caixas de texto: Serão utilizadas para inserção dos dados.
Botões: Serão utilizados para executar os comandos.
Na caixa de ferramentas, clique e arraste para o formulário o objeto Rótulo.
 
Altere a propriedade Caption para: Usuário:

Agora arraste uma caixa de texto para o formulário, posicione-a ao lado do rótulo.
Altere a propriedade Name para txtusuario.

Agora vamos inserir mais um rótulo e uma caixa de texto, que serão utilizadas para a senha.
Arraste os objetos e configure da mesma maneira que foi feita para o rótulo e caixa de texto
do usuário, alterando apenas de usuário para senha.
Veja:
Vamos inserir agora dois botões no form.
Através da caixa de ferramentas insira dois botões no formulário.

Configure as propriedades para cada botão, da seguinte maneira:

Botão1
Propriedade Name: btnlogin
Propriedade Caption: Login

 
Botão2
Propriedade Name: btncancelar
Propriedade Caption: Cancelar
 
Pronto a estrutura já está montada.
Agora vamos programar os objetos.
O primeiro passo é fazer com que a tela de login seja a primeira tela a ser aberta, quando o
arquivo do Excel for executado.
Faça o seguinte:
Na parte esquerda da tela, dê um duplo clique em Esta pasta de trabalho.
Em Geral, altere para Workbook.

Será criado o evento para a execução do código.


Este evento determina que ao abrir a pasta de trabalho (Workbook_open) alguma coisa será
executada, nós ainda vamos dizer o que será executado.

Digite o seguinte comando neste Evento:


Userform1.show
Veja:

Pronto!
Ao abrir a pasta de trabalho, o Userform1 será mostrado.
Agora precisamos configurar os botões.
Dê um duplo clique em Userform1.
Após isso, dê um duplo clique no botão login para criar um evento para este botão.
 
Digite o seguinte comando conforme a imagem abaixo:
Veja como deve ficar:

Explicando o comando, as cores representam a relação entre o código e a explicação


If txtusuario.Text = “admin” And txtsenha.Text = “1234” Then
MsgBox “Acesso Liberado”, vbExclamation, “Seja bem vindo ao nosso sistema!”
Unload UserForm1

Worksheets(“Plan1″).Activate
Else
MsgBox “Credenciais erradas, tente novamente”, vbExclamation
txtusuario.Text = “”
txtsenha.Text = “”
End If
 
Se o que for digitado na txtusuario for Admin e o que for digitado na txtsenha for 1234
então
Exibe a mensagem informando que o acesso está liberado
Esconde a tela de login que é o Userform1
Ativa a plan que é a planilha de trabalho que desejo abri após o login
Caso contrário
As informações estão incorretas, exibe uma mensagem de erro na tela.
Limpa as duas caixas de texto
Fim da condição
Pronto agora só falta programar o botão cancelar.
Volte ao Userform1
Dê um duplo clique no botão cancelar.
No evento do botão digite o comando como mostra a figura abaixo.
Ao clicar no botão cancelar o Excel será fechado.
Agora vamos salvar o arquivo, como uma pasta habilitada para Macros.
Pressione F12, para abrir o Salvar como.
Altere o tipo de arquivo para Pasta Habilitada para Macro do Excel.

Está pronto!
Para testar basta fechar e abrir novamente o seu arquivo do Excel, outra maneira é clicando
no botão Executar na janela do VBA.
 
Veja:

Obs: Para esconder a senha, altere a propriedade PasswordChar, colocando um *.

Ao digitar a senha os valores ficam ocultos.


Fica a dica pessoal, até aproxima!
http://blog.npibrasil.com/index.php/como-criar-uma-tela-de-login-no-excel/
VBA  - Cadastro de Clientes (Excel)

Neste artigo eu volto ao velho e bom VBA-Visual Basic for Applications  para mostrar como
criar um cadastro de clientes básico usando os recursos do VBA Excel na versão Microsoft
Excel 2002. (pode ser aberto no Excel 2007)

Abra o Microsoft Excel 2002 e crie um novo arquivo Excel salvando-o com o
nome CadastroClientes.xls.

Em seguida altere o nome da primeira planilha para Dados Clientes; para fazer isso clique
com o botão direito do mouse sobre o nome da planilha e no  menu suspenso
selecione Renomear digitando a seguir o novo nome;

Feito isso digite nas células de A1 até I1 o cabeçalho da planilha conforme figura abaixo:

Repita o procedimento alterando o nome da segunda planilha para Estados e em seguida


digitando os dados nas células de A1 até A6 conforme exibido na figura abaixo: 
 
Novamente altere o nome da terceira planilha para Cidades e em seguida digite os dados
conforme exibido a seguir:

Encerrada esta primeira parte já podemos criar o nosso formulário de cadastro que servirá
para o usuário digitar as informações que desejamos armazenar.

Pressione Alt+F11 para abrir o Editor Visual Basic e no menu Inserir selecione o


item UserForm;

 
O formulário UserForm1 será apresentado no editor conforme a figura abaixo:
 

Em seguida usando a Caixa de Ferramentas inclua os seguintes controles no formulário:

 6 Labels - vou usar o nome padrão;


 6 Caixas de Texto - txtCPF, txtNome, txtEndereco, txtTelefone, txtEmail, txtNascimento
 2 ComboBox - cboEstado e cboCidade
 2 OptionButton - vou usar o nome padrão;
 4 CommandButton - cmdGravar, cmdPesquisar, cmdExcluir, cmdFechar

Agora vamos formatar os controles :

Para incluir um título do formulário selecione o mesmo e pressione F4 para exibir a caixa de


propriedades do formulário;
A janela de propriedades exibe todas as propriedades do
formulário;

Podemos alterar qualquer propriedade que desejarmos;

Vamos alterar a propriedade Caption para Cadastro de


Clientes que exibirá
o título no formulário;
Vamos alterar também a propriedade Name para Dados;

Obs: Cada controle possui as suas propriedades acessadas


da mesma forma,
basta selecionar o controle e pressionar F4, e, em seguida
seleciona a propriedade
que desejamos alterar e informar o novo valor.

Faremos isso para cada controle Label, TextBox e ComboBox


inserido no formulário.

O leiaute do formulário completo deverá ficar da seguinte forma:


 

Observe que nosso projeto já exibe o arquivo Excel , as planilhas e o formulário criados até
agora.

Para exibir os estados no controle cboEstado vamos fazer o seguinte:

Selecione o controle cboEstado e pressione F4;

Em seguida localize a propriedade RowSource e digite : Estados!A2:A6 conforme abaixo:


 
Para exibir as cidades de um estado selecionado vamos usar o evento Change do controle.

Dê um duplo clique no controle cboEstado e a seguir digite o código a seguir no


evento Change:

Private Sub cboEstado_Change()

If cboEstado.Value = "BA" Then


cboCidade.RowSource = "Cidades!A2:A5"
ElseIf cboEstado.Value = "PR" Then
cboCidade.RowSource = "Cidades!B3:B5"
ElseIf cboEstado.Value = "SC" Then
cboCidade.RowSource = "Cidades!C3:C6"
ElseIf cboEstado.Value = "SP" Then
cboCidade.RowSource = "Cidades!D3:D8"
ElseIf cboEstado.Value = "GO" Then
cboCidade.RowSource = "Cidades!E3:E6"
End If
End Sub

Observe que a fonte de dados é a referência a planilha Cidades indicando a célula inicial e


final onde as informações foram inseridas.

A próxima etapa será incluir do código nos botões de comando. Vamos usar o
evento Click que ocorre quando o usuário clica no botão.
Começando com o botão Gravar, clique duas vezes sobre o mesmo no Editor Visual Basic e
será aberto a janela de código para o evento Click.

A seguir digite o código abaixo no evento Click do botão Gravar:

Private Sub cmdGravar_Click()

'Ativar a primeira planilha


ThisWorkbook.Worksheets("Dados Clientes").Activate
'Selecionar a célula A3
Range("A3").Select

'Procurar a primeira célula vazia


Do
If Not (IsEmpty(ActiveCell)) Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True

'Carregar os dados digitados nas caixas de texto para a


planilha
ActiveCell.Value = txtCPF.Value
ActiveCell.Offset(0, 1).Value = txtNome.Value
ActiveCell.Offset(0, 2).Value = txtEndereco.Value
ActiveCell.Offset(0, 3).Value = cboEstado.Value
ActiveCell.Offset(0, 4).Value = cboCidade.Value
ActiveCell.Offset(0, 5).Value = txtTelefone.Value
ActiveCell.Offset(0, 6).Value = txtEmail.Value
ActiveCell.Offset(0, 7).Value = txtNascimento.Value

'Carregar o sexo do cliente dos botões de opção


If OptionButton1.Value = True Then
ActiveCell.Offset(0, 8).Value = "Masculino"
Else
ActiveCell.Offset(0, 8).Value = "Feminino"
End If

'Limpar as caixas de texto


txtCPF.Value = Empty
txtNome.Value = Empty
txtEndereco.Value = Empty
txtTelefone.Value = Empty
txtEmail.Value = Empty
txtNascimento.Value = Empty
'Limpar as caixas de combinação
cboEstado.Value = Empty
cboCidade.Value = Empty

'Limpar os botões OptionButton


OptionButton1.Value = False
OptionButton2.Value = False
'Colocar o foco na primeira caixa de texto
txtCPF.SetFocus
End Sub

Agora vejamos o código do evento Click do botão Pesquisar:

Private Sub cmdPequisar_Click()

'Verificar se foi digitado um nome na primeira caixa de texto


If txtCPF.Text = "" Then
MsgBox "Digite o CPF de um cliente"
txtCPF.SetFocus
Exit Sub
End If
With Worksheets("Dados Clientes").Range("A:A")
Set c = .Find(txtCPF.Value, LookIn:=xlValues, LookAt:=xlPart)

If Not c Is Nothing Then


c.Activate
txtCPF.Value = c.Value
txtNome.Value = c.Offset(0, 1).Value
txtEndereco.Value = c.Offset(0, 2).Value
cboEstado.Value = c.Offset(0, 3).Value
cboCidade.Value = c.Offset(0, 4).Value
txtTelefone.Value = c.Offset(0, 5).Value
txtEmail.Value = c.Offset(0, 6).Value
txtNascimento.Value = c.Offset(0, 7).Value

'Carregando o botão de opção


If c.Offset(0, 8) = "Masculino" Then
OptionButton1.Value = True
Else
OptionButton2.Value = True
End If
Else
MsgBox "Cliente não localizado!"
End If
End With
End Sub

Vejamos agora o código do evento Click do botão Excluir:


 
Private Sub cmdExcluir_Click()
'Declarar a variável Resp para receber uma resposta
Dim Resp As Integer

'Fazer a busca do registro digitado pelo usuário


With Worksheets("Dados Clientes").Range("A:A")
Set c = .Find(txtCPF.Value, LookIn:=xlValues, LookAt:=xlWhole)

If Not c Is Nothing Then


Resp = MsgBox("Tem certeza que deseja excluir o registro?", vbYesNo,
"Confirmação")
If Resp = vbYes Then
c.Select
Selection.EntireRow.Delete
'Limpar as caixas de texto
txtCPF.Value = Empty
txtNome.Value = Empty
txtEndereco.Value = Empty
cboEstado.Value = Empty
cboCidade.Value = Empty
txtTelefone.Value = Empty
txtEmail.Value = Empty
txtNascimento.Value = Empty
OptionButton1.Value = False
OptionButton2.Value = False
'Colocar o foco na primeira caixa de texto
txtCPF.SetFocus
Else
MsgBox "O registro não será excluído!"
End If
Else
MsgBox "Cliente não encontrado!"
End If
End With
Exit Sub
End Sub

Finalmente temos o código do botão Fechar que é mostrado a seguir:

Private Sub cmdFechar_Click()


     Dados.Hide
End Sub

Agora vamos voltar para nossa planilha pressionando Alt+Q ou no menu Arquivo-> Fechar e


voltar para o Microsoft Excel;

Na planilha vamos incluir um botão para carregar o formulário que acabamos de criar;

Para isso vamos ativar a barra de ferramentas do Visual Basic na planilha. Para isso selecione
no menu Exibir a opção Barras de Ferramentas e selecione Visual Basic;

Em seguida selecione o Botão de comando na barra de ferramentas e inclua na planilha.


Selecione o controle e pressione F4 e altere a sua propriedade Caption para Cadastar;

Executando o projeto iremos ver o formulário ser exibido conforme a figura abaixo.
 

Só resta digitar as informações do cliente e ver a inclusão na planilha.

Simples , simples assim...Pegue o projeto completo :   CadastroClientes.zip


Eu sei é apenas VBA, mas eu gosto...

Veja os   Destaques e novidades do SUPER DVD Visual Basic 2013 (sempre


atualizado) : clique e confira !

Quer migrar para o VB .NET ?

 Veja mais sistemas completos para a plataforma .NET no  Super


DVD .NET  , confira...
 Curso Básico VB .NET - Vídeo Aulas

Quer aprender C# ??

 Chegou o Super DVD C#  com exclusivo material de suporte e vídeo


aulas com curso básico sobre C#.
 Curso C# Basico - Video Aulas

Controle de estoque com imagem - Aula 13 já disponível

http://www.vbaacademy.com.br/como-criar-uma-tela-de-login-excel-vba-aula-9/

https://vimeo.com/116819514

https://vimeo.com/116819514

http://br.ccm.net/faq/15291-vba-excel-senha-e-usuarios

http://excelamador.blogspot.com.br/2013/03/criando-tela-de-login-no-excel-passo.html

http://onlinevideolecture.com/
https://vid.me/cdor/tela-de-login-e-senha-excel-vba-aula-1-de-2-f%C3%A1c
http://www.howtolookattractive.info/aula-2-tela-login/

http://excelpratico.com/inserindo-formularios-no-excel/

https://www.youtube.com/watch?v=jfum4a4xXzw
EXCEL

DICA - 01 
Objetivo:
O objetivo deste tutorial e dos demais é ensinar você a programar em VBA de uma forma
simples e prática, você vai aprender utilizar vários recursos que Excel oferece através de seu
editor de programação, criar formulários, interagir com planilhas, que com certeza serão
muito úteis, podendo ser utilizado para criar sistemas para uso pessoal ou profissional. Neste
tutorial começaremos a conhecer o editor de visual basic, seus principais menus.
 Pré-requisito:
 Para você poder acompanhar o desenvolvimento deste tutorial, será necessário ter
conhecimento no mínimo de informática.
 Para começar a programar quase sempre começamos fazendo um curso de Lógica de
Programação, esta serve para podermos utilizar as ferramentas disponíveis para criação de
sistema, de forma a raciocinar para resolver determinado situação. Em nosso caso, não irei
abordar a lógica de programação direta e sim ao longo dos tutoriais, mesmo assim será
voltado ao desenvolvimento de sistemas básico que ensino a criar aqui mesmo no site do Sr.
Julio Battisti, irei ensinar de uma maneira, que se você ao compreender minha explicação já
começará a desenvolver a lógica e a programar, podendo desenvolver seus próprios sistemas,
irei fazer assim para que qualquer pessoa que tenha informática básica possa começar a
programas em VBA.
 DICA: Procure ler uma apostila sobre lógica de programação, você pode encontrar no site
www.apostilando.com.
 Irei procurar ensinar através dos tutoriais quase tudo de forma objetiva e direta, ou seja, sem
demorar muito com teorias, claro que as mesmas são necessárias em alguns casos.
 Pensei um modo de simples para você começar a ensinar você a programar, então, como
pretendo explicar  determinado código e logo em seguida fazer um exercício na prática, a
primeira coisa a aprender é conhecer o editor de Visual Basic do Excel.
 Conheceremos suas ferramentas e objetos, aprenderemos a modificar as propriedades.
Objetos no editor são por exemplo uma Label que tem como uma das suas utilidades para
inserir nome dos campos, ou o próprio formulário que é um objeto, você vai entender melhor
logo em seguida.

Para ativar o editor do visual basic do Excel, clique nom menu ferramentas, macros, “editor
de visual basic”.
 
Tela 001

 
Tela 002
 Na parte superior temos os menus arquivo, editar e assim por diante, iremos aprender
apenas os necessários   e seus  principais comandos. Logo abaixo temos uma barra de atalho
com os principais comandos, onde podemos inserir form, iniciar ou parar o aplicativo, entre
outros, mas iremos aprender por enquanto é a utilizar os menus.
 Na janela da esquerda temos o projeto, neste vai aparecer as planilhas, os formulários com
seus respectivos nomes e na  janela da direita vai ser onde iremos inserir e manipular todos
os objetos.
 O primeiro menu que vamos aprender é o “Exibir”:

 
Tela 003
 Os principais comandos que utilizaremos serão os seguintes.
 EXIBIR:
 CODIGO: Este será utilizado toda a vez que precisarmos abrir a janela de código de um
objeto.
 OBJETO:Este será utilizado toda a vez que precisarmos retornar ao objeto:

PROJECT EXPLORER:Este serve para mostrar a janela de projetos, que fica localizada no lado
esquerdo do editor de visual basic.
 JANELA DE PROPRIEDADES:Este serve para ativar a janela de propriedades de um objeto.
 CAIXA DE FERRAMENTAS: Esta será contem várias ferramentas para utilizar no
desenvolvimento do sistema.
 
Tela 004
 INSERIR:
 INSERFORM: Este será utilizado para inserir o formulário no projeto.
 MODULO: Este será utilizado para inserir módulos no projeto.

Tela 005
 EXECUTAR:
 EXECUTAR USERFORM: Este será utilizado para iniciar o sistema.
INTERROMPER: Este será utilizado para pausar o sistema.
 REDEFINIR:  Este vai parar o sistema por completo.
 
Tela 006
 FERRAMENTAS:
 REFERÊNCIAS: Este utilizaremos para ativar determinadas bibliotecas quando for necessário.
 Conhecido os principais menus e comandos que utilizaremos, no próximo tutorial iremos
conhecer a caixa de ferramentas.
Objetivo:
 O objetivo deste tutorial é continuar aprender sobre o editor de visual basic do Excel, neste
iremos conhecer a caixa de ferramentas e a inserir um formulário, a mesma possui vários
objetos que utilizaremos freqüentemente no desenvolvimento de sistemas. Mostrando
sempre através de telas para facilitar o seu aprendizado.
 Pré-requisito:
 Para você poder acompanhar o desenvolvimento deste tutorial, será necessário ter
conhecimento no mínimo de informática e Parte 1 deste tutorial.
DICA - 02
Para que possamos visualizar a caixa de ferramentas teremos que estar com algum objeto
ativado, então, irei ensinar a inserir um objeto que neste caso será um formulário, o processo
é simples e prático. Clique no menu inserir Userform.
Tela 001
 Agora para visualizarmos a caixa de ferramentas, clique sobre o menu “exibir” e depois em
caixa de ferramentas.

 
Tela 002

Pronto, foi inserida a caixa de ferramentas, agora iremos conhecer os principais objetos da
mesma, sempre se da direita para esquerda, irei usar números como referencia, ou seja, a
seta será o objeto numero 1, a letra A será 2 e assim sucessivamente.
 Objeto 1 –Ferramenta de marcação representado pela seta: Esta  utilizaremos para
manipular os objetos, como dimensionar a largura do formulário, entre outros.
 Objeto 2 – Label representada pela letra A: Esta utilizaremos quase sempre para identificar
um campo ou usar como uma variável. Para inserir qualquer objeto basta selecioná-lo e clicar
sobre o formulário.
 Objeto 3 – Caixa de texto representado pela letra ab|:  Esta utilizaremos para inserir dados,
como por exemplo, senha e login.
 Objeto 4 – Caixa de combinação: Esta utilizaremos quase sempre para disponibilizar 
algumas opções que os usuários poderão selecionar, digamos que você tenha uma lista de
três nomes, Ana, Paula e Diene num acesso via login e você acessa este com algum deste
nomes, então você não ira precisar digitar nenhum, apenas selecionar o que deseja.
 Objeto 5 – Caixa de listagem : Esta utilizaremos quando quisermos fazer o mesmo processo,
que expliquei na caixa de combinação, a diferença que esta ira disponibilizar os nomes em
forma de listas. Também podemos utilizaras para mostrar vários registros do banco de dados.
 Objeto 6 Caixa de seleção: Esta utilizaremos quando oferecemos ao usuário uma lista de
opções que o mesmo poderá escolher. Um exemplo é quando criamos um e-mail em algum
provedor, este pergunta quais interesses temos em determinada área para receber e-mails,
então, você poderá escolher varias entre as que o mesmo disponibiliza.
 Objeto 7 Botão de opção: Este tem função parecida com a caixa de seleção a diferença é que
podemos apenas marcar uma opção de cada vez, um exemplo é fazer um formulário onde
usuário poderá selecionar como resposta sim ou não.
 Objeto 9 Moldura:  Este utilizaremos para  dar um designer mais moderno ao formulário ou
para separar certos dados.
 Objeto 10 Botão de comando: Este utilizaremos para que através do mesmo determinar
alguma função.
 Objeto 11 Multi-página: Esta utilizaremos sempre dentro do formulário onde podemos
separar os dados.
 Objeto 14 Imagem:  Este utilizaremos para quando quisermos inserir uma imagem ao
formulário.
 Conhecido as  principais ferramentas, irei mostrar como inseri-la no formulário o processo é
bem simples, vamos inseri como exemplo uma label, para isso selecione a mesma na caixa de
ferramentas e clique sobre o formulário.
Tela 003
 O processo é o mesmo para as demais ferramentas, para inserir uma caixa de texto selecione
a mesma e clique sobre o formulário.

 
Tela 004

Bom agora que já conhecemos e sabes inserir os objetos, teremos que aprender sobre suas
propriedades é através destas que iremos inserir cor, alterar fonte, tamanho entre outros.
Vamos começar pela Label, insira uma label no formulário com a mesma selecionada ative a
janela de propriedades, irei mostrar as principais:
 
Tela 005
 Propriedade Name:  Através desta poderemos modificar o nome da label, será útil para a
hora que formos programar o código. Irei mostrar um exemplo de coma alterar esta
propriedade, as demais irei apenas explicar a função de cada propriedade.
 Na janela de propriedade, bem no inicio esta escrito Label1, apague este nome e insira
outros, em nosso caso iremos digitar “teste”.

 
Tela 006
 Backcolor:  Esta utilizamos para modificar a cor de fundo do objeto, que neste caso é a Label.
 
Tela 007
 Caption:  Esta utilizamos para modificar o nome da label, ou seja, o nome que estamos
visualizando, neste vamos colocar o nome teste também.

Tela 008
Propriedades Label:
 Irei mostrar passo a passo a modificar a mesma, as demais propriedades deste e dos demais
objetos o procedimento é o mesmo.
 No editor de visual basic insira um formulário, clique no botão inseri userform, depois a
label, selecione a mesma na caixa de ferramentas e de um clique sobre o formulário.

 
Tela 001
 Agora vamos ativar a janela de propriedades selecione a label se mesma não tiver, clique no
menu exibir janela de propriedades.

 
Tela 002
 Vamos conhecer suas principais propriedades.
 Name: Esta é para substituir o nome Label1, usamos quase sempre para fazer referência de
códigos a mesma.
 Backcolor: Esta é para modificar a cor de fundo.
 Bordercolor: Esta é para trocar a cor da borda.
 Caption: Esta é para modificar o nome Label 1 visualmente, ou seja, este é o nome que
aparece no formulário.
 Enable: Esta é quando selecionada false não é permitido modificar o nome da label
 Font:  Esta é para modificar a fonte, tamanho e estilo.
 Forecolor: Esta é para modificar a cor da fonte.
 Height: Esta é para modificar a altura da label.
 Visible: Esta quando selecionado false, não ira mostra a label durante a execução do
aplicativo.
 Width: Esta é para definir a largura.
 Agora que você já conhece as principais propriedades da Label, irei ensinar a modificar
conforme exemplo abaixo.
 Insira uma label no formulário, onde iremos modificar as suas propriedades da seguinte
forma:
 Caption para MODIFICANDO AS PROPRIEDADES
 Height para 20
 Width para 138
 Com a label selecionada, a janela de propriedades clique em caption apague o nome e insira
o que definimos:

Tela 003
 Agora selecione a propriedade height e altere conforme a nosso definição logo acima:
 
Tela 004

Por último vamos alterar a propriedade widht conforme a definição logo acima.

 
Tela 005
 Conhecendo as principais propriedades da label e sabendo os processos para modificá-las,
lembrando que as propriedades dos demais objetos, são quase as mesma e iremos
aprendendo conforme nosso estudo.portanto, iremos criar um pequeno código.
 O objeto deste código é clicar num botão e aparecer a seguinte frase: “Estou aprendendo a
programar vba”. Então no formulário os objetos que precisaremos é de um formulário e um
botão, insira os mesmos. Feito isso, iremos modificar a propriedade Caption de
commandbutton1 para Mensagem e name para botão.
 Selecione o botão e através da propriedade caption e faça a alteração:

 
Tela 006
 Modificada as propriedades, vamos ativar a janela de código do botão, para isso clique no
menu exibir código fonte.

 
Tela 007
 Dentro do código do botão, cada objeto dentro da janela de código existe um determinado
evento, neste caso vai ser o evento clic, que ocorre sempre quando o botão for clicado, mas o
que interessa é a criação do código neste momento.
 Sempre quando quiser que aparece uma mensagem digitamos o seguinte código:
 Iniciamos com.
 MSGBOX “Estou aprendendo a programar vba”
 Dentro das aspas duplas escrevemos a mensagem.
 
Tela 008

Agora basta voltar a exibir o formulário, para isso no menu exibir clique em objeto.

 
Tela 009
 Agora inicie o aplicativo no menu executar e clique no botão para visualizar a mensagem.
 
Tela 010
DICA - 03
Vamos começar a utilizar os códigos na pratica assim vai ficar melhor o seu aprendizado,
podendo você utilizar estes códigos para a criação dos seus sistemas bastando fazer a
adaptação. Criaremos um pequeno sistema para prática irei mostrar passo a passo.
 Com o editor de visual basic do Excel aberto, vamos salvar o sistema com nome “vba.xls” e
depois vamos inserir o primeiro objeto que será um formulário. Para inserir o formulário
clique no menu inserir userform.
 
Tela 001
 Agora vamos criar um código para inserir a data, a primeira coisa a fazer antes de escrever o
código é definir em qual objeto utilizaremos para mostrar a mesma, aconselho a utilizar um
rotulo, então, utilizaremos a mesma para visualizar a data, insira um label no formulário, para
isso selecione a mesma na caixa de ferramentas e depois clique sobre o formulário.

 
Tela 002
 Temos que definir onde inserir o código, o que vamos criar para a data deve ser inserido no
formulário na sua propriedade initialize, esta propriedade executa o código  assim que é
inicializado o formulário, portanto, quando rodarmos o aplicativo o código será acionado e a
data será mostrada através do objeto label. Para isso clique duas vezes sobre o formulário e
depois seleciona a propriedade.
 
Tela 003
 A seguir o código para mostrar a data:
 Label1 = Format(Date, " dd / mm / yyyy")
 Veja que primeiro inserimos o nome do objeto que vai receber a data, depois colocamos
Format() seguido Date com a formatação dia, mês e ano.

 
Tela 004
 Agora vamos rodar o programa, para ver a data:
 
Tela 005
 Você viu que é simples criar um código para inserir uma data utilizando programação. Agora
vamos fazer com que a data aparece dentro de um objeto textbox quando você clicar num
botão. Para isso insira um textbox e um botão, selecione os mesmo na caixa de ferramentas e
clique sobre  o formulário:

 
Tela 006
 O código para inserir a data esta pronto, o que temos que fazer é modificar o nome do
objeto que é Label1 para textbox1, então o código passa a ser assim:
 Antes: label1 = Format(Date, " dd / mm / yyyy")
 Agora: TextBox1 = Format(Date, " dd / mm / yyyy")
 Devemos inserir este código dentro do botão em sua propriedade clique, para que quando
clicarmos este código vai enviar a data para o text.
 
Tela 007
 Execute o programa e clique sobre o botão, para que a data seja inserida dentro do textbox.

Tela 008
 Vamos criar um código bem simples para fechar o formulário sem clicar no x, para isso
inserira outro botão e dentro do mesmo coloque o seguinte código:
 Userform.hide
 Colocamos o nome do formulário e depois o código Hide.
 
Tela 009
 Execute o programa e clique no botão fechar.

Tela 010
Vamos começar este tutorial aprendendo a fazer cálculos simples, o que vai ser sempre útil e
utilizaremos quase com freqüência no desenvolvimento de sistemas. Para isso vamos utilizar
os seguintes objetos:
 01 Formulário
 06 Label
 03 Caixas de texto
 01 Botão
DICA - 04
 Vamos começar fazendo uma simples conta de multiplicação, não iremos definir um valor x,
com o que vamos aprender agora você pode até montar um pequeno sistema digamos para o
seu filho aprender a tabuada, insira e ajuste os objetos conforme a tela abaixo:

 
Tela 001
 Bom, agora vamos inserir dentro do botão o código, no seu evento clique, para que após
você digitar nas caixas os números você clique para ser calculado e vai aparecer o resultado
na terceira caixa, baixo o código.
 TextBox3.Text = TextBox1.Text * TextBox2.Text
 Vou explicar o funcionamento do código acima que é bem simples, só precisamos utiliza a
lógica, quem vai receber o valor final, ou seja, o valor já multiplicado é a terceira caixa, então
começamos digitando o seu name no mais a sua propriedade text.
 Colocamos o sinal de igual e  o nome da primeira caixa mais o sinal de asterisco, que
representa multiplicação, seguido do nome da segunda caixa, pronto.
 Abaixo o código dentro do botão mais o sistema rondando e mostrando o resultado da
multiplicação de 10*10.

 
Tela 002

 
Tela 003 
 Agora vamos fazer para efetuar a divisão o processo é quase o mesmo o que devemos fazer
é substituir o asterisco pela / que representa a divisão, abaixo o código e o exemplo da
divisão de 100/10.

 
Tela 004
 
Tela 005
 O mesmo processo é para fazer s subtração, abaixo o código o exemplo 100 – 90.

Tela 006
 
Tela 007
 Bom, agora só falta fazer a adição, você deve estar pensando que é só substituir o sina de –
por + mas não, é que para adição apenas este sinal de mais ira juntar os números, substitua o
sinal de – por + e teste 100 + 100, ou resultado será conforme a tela abaixo:

Tela 008
 Neste caso temos que criar duas variáveis e atribuir valores as mesmas, nos próximos
tutoriais irei abordar melhor o uso das variáveis. Iremos criar a variável x e y mas para isso
teremos que declará-las como um inteiro  da seguinte maneira.
 Dim x As Integer
 Dim y As Integer
 x = TextBox1.Text
 y = TextBox2.Text
 TextBox3.Text = x + y
 Logo após fazer a declaração temos que atribuir o valor para as variáveis, como não sabemos
qual o valor que o usuário vai digitar atribuímos a caixas de texto um e dois, assim ira fazer a
soma de qualquer número que for digitado.
 Na última parte do código, lembre-se que este esta dentro do botão no seu evento clique,
colocamos primeiro a caixa de texto 3 que vai receber e depois a variável x + y, que nesta
altura já possuem um determinado valor que receberam das caixa de texto.
 Abaixo o código e a soma de 100+100 resultando no valor esperado.

Tela 009
 
Tela 010
DICA - 05
Para utilizarmos a declaração de uma variável utilizamos:
 Dim nome
 Neste caso o “nome” é o nome  que damos a variável, lembrando que não definimos o tipo,
ou seja, se é texto, inteiro, etc. Sua sintaxe completa é a seguinte:
 Dim + Nome da Variável + As + Tipo da Variável
 Dim teste as integer
 Estou dizendo no exemplo acima que o nome da variável é teste o tipo inteiro, ou seja,
números inteiros.
 Bom, para que você entenda melhor vamos criar um exemplo prático, através de um
pequeno sistema que chamaremos de: Entrada no Sistema.
 Vou explicar o seu funcionamento, iremos criar duas telas, a primeira iremos inserir um titulo
digite “seu nome na caixa de texto”, mais os objetos caixas de texto e um botão.
 Na segunda tela vamos inserir o titulo “Seja Bem Vindo!” mais um objeto label para receber
o valor da variável que neste caso vai ser o nome que digitarmos na caixa de entrada, este
exemplo é útil para você criar um sistema de login bem básico, nos próximos tutoriais
utilizaremos um exemplo parecido com este para criar uma entrada ao sistema com acesso
restrito.
 Vamos utilizar os seguintes objetos para este exemplo:
02 Formulários
01 Caixa de texto
03 Label
01 Botão
 Formate o primeiro formulário da seguinte maneira:
 1° Formulário.
 Largura 240
 Altura 180
 Name para entrada
 Caption para sistema entrada
 1° Label
 Digite “sistema de entrada”
 2° Label
 Digite “nome”
 Caixa de texto
 Name para text_nome
 Botão
Caption para Acessar
 Name Para Buton_acessar

 
Tela 001
 2° Formulário
 Caption para Seja Bem Vindo!
 Largura para 240
 Altura 180
 Name para recebe
 Label
 Caption para Seja Bem vindo
 2° Label deixar sem modificações.
Tela 002
 Criado as interfaces gráficas agora vamos codificar o sistema, todo o código irá ser ativado 
quando clicarmos no botão acessar, então, o código será colocado dentro do botão na seu
evento clique.
 A primeira coisa a fazer é declarar uma variável na qual iremos chamá-la de “nome”, sua
declaração é a seguinte:
 Dim nome as string

 
Tela 003
 O próximo passo é repassar um valor para esta variável que chamamos de nome, vamos
supor que não  sabemos que nome será digitado pelo usuário, então atribuímos a caixa de
texto que esta com o seguinte name
 Text_name, ficando assim o código:
 Nome=text_name

 
Tela 004
 Agora iremos escrever  mais dois códigos, o primeiro é que vai fazer com que passamos o
valor já armazenado  na variável nome para a label2 que se encontra no 2° formulário que se
chama recebe. Para fazermos isso digitamos primeiro o nome do formulário recebe + .
(ponto) Label2=nome e por último inserirmos o código para abrir o formulário recebe.,
colocamos o nome do mesmo + a palavra Show.
 Recebe.label2=nome
 Recebe.show

 
Tela 005
 Agora falta pouco para terminamos o código, no formulário recebe, temos que receber o
valor da variável nome que vai ser passado assim que o usuário clicar no botão acessar, para
utilizamos o objeto label2 para receber este valor, então escrevemos o código dentro do
formulário no evento initialize, ou seja, este ira ativar o código assim que o formulário for
aberto.
 Label2 = nome

 
Tela 006
 Agora é só executar o sistema a partir do primeiro formulário digitar qualquer nome e clicar
no botão acessar.

 
Tela 007
 
Tela 008
estrutura If ...Then...Else,  com esta podemos determinar qual código vai ser executado se o
resultado for verdadeiro.
 Sua sintaxe é a seguinte:
 If  condição Then
Comando 1
Comando 2
....
 Comando 
Else
Comando 1
Comando 2
....
 Comando 
End if
 Se a condição for verdadeira ira executar parte do código que contém  o comando, caso seja
falsa executará a outra parte.  Para que você possa compreender melhor, nada melhor que
utilizar-mos um exemplo prático.
DICA - 06
 No tutorial anterior falei sobre variáveis e criamos um exemplo prático, onde digitávamos
um nome qualquer e este era repassado através de uma variável para o segundo formulário.

Vamos pegar o mesmo formulário e vamos criar uma condição para que só abra o segundo
formulário se o nome for igual a “ERICO”, caso não seja este o nome digitado vamos fazer
com que aparece uma mensagem “Nome esta incorreto”. Com a utilização desta condição
você poderá criar um sistema de login simples, onde digitamos “ERICO” você poderá colocar
seu nome, por exemplo.
 Abaixo esta os formulários pronto, que ensinei a criar no tutorial anterior.

 
Tela 001

 
Tela 002
 Acesse o código do formulário entrada que esta dentro do botão acessar. Neste temos que
definir a condição, mas te que forma? Simples,já temos o código pronto que terá a função de
abrir o segundo formulário e se queremos que o sistema só ative o  segundo formulário se o
nome for igual “ÉRICO”. devemos  inserir  o código da seguinte maneira:
 If  Text_nome.Text = "VBA" Then
 
Tela 003
 A condição acima diz o seguinte: Se text_nome.text (text_box é a caixa onde você vai digitar
o nome)  for igual a VBA então, vai executar o comando abaixo, que no caso vamos colocar o
código para abrir o formulário.
 Dim nome As String
 nome = Text_nome
 recebe.Label2 = nome
 recebe.Show

 
Tela 004
 Agora temos utilizar a expressão IF, que em português significa “se” e logo após o comando
que será executado quando o nome não for igual a “ÉRICO”, no nosso caso vai ser mostrado
uma mensagem, e por ultimo encerramos a condição.
 Else
 MsgBox "Nome esta incorreto"
 End If
 
Tela 005
 Vamos rodar o programa e digitar o nome “ERICO”, quero fazer uma observação referente
ao código, o mesmo faz distinção entre minúsculas e maiúsculas e acentos.Então, você deve
tomar cuidado ao escolher a forma que vai escrever o nome, se for você que utilizará o
sistema tudo bem, mas já imaginou se outra pessoa que ira utilizar?, com certeza a mesma ira
fazer perguntas porque que esta digitando o nome escolhido provavelmente pela mesma e
não esta conseguindo acessar o sistema.
 Nos próximos tutoriais iremos começar a interagir mais com os usuários, ou seja, entrada de
dados do mesmo direto para o banco de dados, que neste caso vai ser uma própria planilha
do Excel, aí irei  ensinar para você alguns ajustes que evitarão certos problemas, e temos que
sempre que pensar que apesar do Excel através do vba criarmos sistemas o mesmo tem suas
limitações.
 
Tela 006

 
Tela 007
 Agora se digitarmos outro nome será executado  o código da segunda parte do comando,
que á mensagem.
 
Tela 008

 
Tela 009
“For...Next”, em determinadas situações precisamos fazer a repetição de um ou mais
comandos, quase sempre utilizamos esta quando já sabemos o números de vezes que o
código deve ser executado, também utilizamos um cantador que pode ser uma variável.
 Sua sintaxe é a seguinte:
 For contador = inicio do fim do incremento
 Comando1
 Comando2
 .......
 Comando
 Next
 Vamos fazer um exemplo  prático e simples para que você entenda melhor a utilização desta
estrutura,.
 Dim y
 y = 10
 contador = 1
 For i = 1 To y
 contador = contador + i
 Next
 Me.TextBox1 = contador
DICA - 07
 Este código vai fazer a repetição de 56 vezes partindo do numero 1, crie uma simples tela
com os objetos  com abaixo:

 
Tela 001
Insira o código dentro botão iniciar, no seu evento clic:

 
Tela 002
 Agora execute o programa e clique no botão iniciar, o resultado deve ser igual ao que
aparece dentro da caixa textbox.

 
Tela 003
 Este é um exemplo bem simples, mas poderíamos fazer executar uma determinada função
mais complexa por diversas vezes.
 Agora irei ensinar a carregar um combobox através de código, várias vezes você ira precisar
do mesmo, por exemplo: digamos que tenhamos um formulário para cadastro de clientes,
neste tem o campo cidade, devemos toda vez que cadastrar um cliente novo digitar o nome
da sua cidade, para isso podemos utilizar o combobox e cadastrar várias cidades  assim você
apenas seleciona.
Abaixo insira o objeto combobox conforme a tela abaixo:

 
Tela 004
 Irei inserir apenas 03 nomes de cidades, você pode também utilizar este exemplo para inserir
nome de estados. O código deve ser inserido no formulário no seu evento initialize, para que
assim que o mesmo for aberto, ele preencha o combobox com os nomes que tenhamos
definido.
 ComboBox1.AddItem "São Paulo"
 ComboBox1.AddItem "Rio Janeiro"
 ComboBox1.AddItem "Brasília"
 Começamos a escrever o código digitando o nome do objeto que vai receber o nome, neste
caso será o combobox, depois inserimos  a propriedade “additem” seguido do nome da
cidade, este deve estar sobre aspas duplas, por ser tratar de uma string, ou seja, texto.

 
Tela 005
 
Tela 006
 Outra forma que você pode carregar o combobox é a partir da própria planilha utilizando
para isso a propriedade Rowsorce, digite na planilha na coluna “A” os mesmos nomes das
cidades.

 
Tela 007
 Antes de fazermos a referência você deve apagar o código que ensinei a criar, se não o
mesmo não ira funcionar, ou pode fazer este exemplo abrindo outro formulário e inserindo
um combobox que é o mais correto.
 Agora selecione o combo, ative sua  propriedade e na mesma clique sobre Rowsource nesta
digite o seguinte:
 Plan1! A1: A3
 Você esta dizendo ao mesmo que selecione da planilha 1 tudo que estiver entre a célula A1
até A3.
 
Tela 008

 
Tela 009

Conclusão:

 Neste tutorial falei sobre estruturas de controle de repetição For ... Next , mostrando sua
sintaxe e mostrando sua utilização de forma prática para facilitar o seu aprendizado, também
ensinei como carregar um combobox través de código e por meio da propriedade
Rowsource,passo a passo e de forma simples direta e objetiva através das telas o que vai
facilitar o seu aprendizado. 
DICA - 08
Começaremos a calcular um intervalo (Intervalo quer dizer um número de dias) entre duas
datas, para isso utilizamos o código “Datediff”, sua sintaxe é a seguinte:
 Datediff (intervalo, data1, data2)
 Onde:
 Intervalo: Vai ser uma string que vai indicar o tipo de intervalo, ou seja, dia (d), mês (m),
ano(yyyy).
 Data1: é a primeira data, ou seja, data inicial.
 Data2: é a segunda data, ou seja, data final.
 Crie um formulário e adicione ao mesmo um botão  dentro do mesmo no evento clic digite o
seguinte código:
 Msgbox “ O Intervalo entre as datas é: “ & datadiff(“d”,”01/04/2006”,”04/04/2006”)

 
Tela 001
 Agora execute o programa e clique sobre o botão, deve aparecer o seguinte resultado:
 
Tela 002
 É simples e fácil,veja que no exemplo acima digitei a data direto no código porque eu já sabia
as datas a serem calculadas, mas se quisemos criar um sistema onde o cliente vai digitar as
datas. Este exemplo que irei ensinar, utilizei  parte do mesmo para  desenvolver um sistema
para calcular juros de uma prestação.
 A primeira coisa que você deve fazer é criar uma interface gráfica para o usuário dar entrada
com os dados que neste caso será a data inicial e final, os objetos serão os seguintes,
lembrando que quanto  a formatação do objetos pode esta fica  ao seu critério.
 01 formulário
 04 label
 01 botão
 Após ter criado a interface gráfica para o usuário, começaremos a pensar como iremos
desenvolver o código ,  este deve ser inserido  dentro do botão calcular, no seu evento clic.
 Como não sabemos quais datas o usuário vai digitar precisaremos criar duas variáveis uma
para data inicial o qual iremos chamar de “inidata” e para data final que iremos chamar de
“fimdata”.
 Código de declaração das variáveis.
 Dim inidata as string
 Dim fimdata as string
 
Tela 003

 
Tela 004
 Agora temos que passar os valores para estas variáveis, ou seja, este valor será a data que o
usuário vai digitar no textbox1 e textbox2, através do seguinte código;
 Inidata = Me.TextBox1
 Fimdata = Me.TextBox2
 
Tela 005
 Agora, temos que inserir o código datediff, da seguinte maneira:
 Textobox3 = datediff (“d”,Inidata,Fimdata)
 Começamos com o objeto textbox3  que vai receber o valor final, ou seja, o resultado do
intervalo.
 Depois inserirmos o sinal de igual (=) mais  código datediff, com o intervalo “d” que vai ser o
número de dias, e as duas variáveis “Inidata” e “Fimdata”.

Tela 006
 Agora execute o programa e digite por exemplo as datas: 01/04/2006 e 04/04/2006,, o
resultado deve ser igual o que aparece na tela abaixo:
 
Tela 007 

Conclusão:

 Neste tutorial ensinei a calcular  intervalos entre duas datas utilizando o código “Datediff”
mostrando sua sintaxe, ensino também a criar um exemplo  prático  para facilitar o seu
aprendizado, de forma  simples direta e objetiva através das telas o que vai facilitar o seu
aprendizado. Bons estudos e até a próxima parte.
DICA - 09
Bom, vamos aprender os códigos utilizando um formulário, insira todos os objetos conforme
a tela abaixo:
Tela 001
 O primeiro código “Day()”que também pode ser chamado de função,  será  para retornar
apenas o dia de uma data, ou seja, digamos que você tenha uma data no seguinte formato
dd/mm/yyyy, com o código “day()” poder retornar dd.
 Dentro do botão datas insira o código da seguinte maneira: me.label1=day(date), veja que
dentro parênteses insira o comando “date”, isso porque este ira retornar a data do sistema, e
o código day via extrair apenas o dia.

 
Tela 002
 
Tela 003
 Para retornar o mês utilizamos a função “month()”, aproveitando o momento antes de
inserimos o código para extrair o mês de uma data,  irei ensinar você a comentar o código,
isso é muito útil por exemplo quando desejar escrever qual a função de um determinado
código e também comentar para que o mesmo não seja executado quando o programa for
inicializado. Para que você entenda melhor vamos comentar o código que mostra apenas o
dia, o que remos que fazer é inserir uma aspa simples no inicio do mesmo, assim o código
ficara na cor verde, e não será executado.
 ‘ me.label1= Day (Date)

 
Tela 004
Feito isso vamos inserir o código para extrair a apenas o mês:
 Me.label1= Month(Date)

 
Tela 005

 
Tela 006
 Para extrair apenas o ano de uma data utilizamos  o código “year (date)”.
Me.Label1 = Year(Date)

 
Tela 007

 
Tela 008
 Um fator importante para é que as vezes precisamos quando estamos programando no
editor de vba é ativar a biblioteca MicrosoftDAO, se não alguns códigos não irão funcionar,
principalmente quando estamos fazendo a declaração de variáveis. Para ativa-la, no editor do
vba clique no menu ferramentas, referências, será aberta uma janela, na mesma selecione a
biblioteca e clique no botão ok.
Tela 009 

Conclusão:

 Neste tutorial ensinei você a utilizar códigos para fazer manipulações com datas, podendo
extrair apenas o dia, mês ou ano da mesma e também  a ativar a biblioteca Microsoft DAO, de
forma  simples direta e objetiva através das telas o que vai facilitar o seu aprendizado
DICA - 10
Objeto.show
 Podemos  utilizá-lo de formas diferentes para abrir um formulário, ou seja, podemos utilizá-
lo dentro um botão e quando você clicar  o mesmo abre o formulário, também podemos
colocá-lo no próprio formulário que quando o mesmo for fechado vai abrir outro, entre
outros, irei mostrar o primeiro tipo utilizando o objeto botão.
 Primeiro utilizando um botão, para isso insira dois formulários conforme mostra as telas
abaixo.
Tela 001

 
Tela 002
 Iremos inserir o código dentro do botão para que quando o mesmo for clicado abra o
formulário teste, antão, devemos colocar o nome do formulário que quer abrir, que no nosso
caso é formulário_teste mais .show.
 Formulário_teste.show
Tela 003
 Agora, execute o sistema e clique no botão abrir formulário teste.

 
Tela 004
 Agora você já sabe com abrir um formulário, irei ensinar como fechá-lo, o código é quase o
mesmo, apenas fazemos a substituição “show” por “hide”. Dentro do formulário teste insira
um botão e dentro do mesmo coloque o seguinte código.
 Formulário_teste.hide
Tela 005
 Agora vamos aprender um código para inserir planilhas via código, note na tela abaixo que
estou com 05 planilhas.

 
Tela 006
 Crie um formulário conforme a tela abaixo:
Tela 007
 O código para inserir planilhas é “Sheets.add”, dentro do botão que criamos acima insira o
mesmo.

 
Tela 008
 Pronto agora inicie o sistema e clique no botão para inserir planilhas. Para deletar utilizamos
o seguinte código:
 “Sheets("nome planilha").Delete”, onde inserirmos sheets que representa planilha, entre
parênteses colocamos o nome da planilha e por fim delete. Vamos deletar a plan4 como
exemplo, crie um formulário conforme o da tela abaixo e dentro do botão do mesmo digite o
seguinte código:
 Sheets(“plan4”).delete
 
Tela 009

 
Tela 010
 Agora também irei ensinar para você como disparar uma mensagem quando um formulário
for fechado, isso é bem simples e útil, como exemplo alertar o usuário sobre determinado
assunto ou até mesmo em vez de mostrar uma mensagem fazer com que abra outro
formulário.
 Vamos colocar a seguinte mensagem “Você esta aprendendo VBA”, crie o formulário
conforme a tela abaixo e depois insira o código abaixo, note que colocamos o código que vai
fechar o formulário e em seguida disparamos a mensagem a mensagem assim que o
formulário abrir apenas tocaríamos o código me.hide por me.show
  
Me,hide
 msgbox”Você esta aprendendo VBA” dentro do botão.
 
Tela 011

 
Tela 012 

Conclusão:

 Neste tutorial ensinei você a utilizar códigos para abrir e fechar formulários, inserir e deletar
planilhas e também como inserir uma mensagem quando o formulário for fechado, de forma
simples direta e objetiva através das telas o que vai facilitar o seu aprendizado. 
DICA - 11
Você também ira aprender os passos para começar a criação de um sistema, começarei
definindo os campos que utilizaremos que neste caso serão os seguintes:
 N°, Filial, Matricula, Nome, CPF, RG, Data Nascimento.
 Com estes campos podemos dar inicio a criação do banco de dados, abra uma planilha do
Excel e salve com o nome “projeto.xls”, depois escreva os nomes dos campos conforme a tela
abaixo.

 
Tela 001
 Agora precisamos fazer algumas formatações, sendo que a primeira delas é colocar os nomes
dos campos em destaque  com outra cor e em negrito, devendo ficar conforme a tela abaixo.

 
Tela 002
 Agora temos que fazer a formatação de cada campo conforme a sua entrada de registros, ou
seja, no campo n° podemos deixar com formatação geral.
 
Tela 003
 Ao campos filial e nome devem ficar com a formatação de texto, porque neste deverão só
receber valores com texto.

 
Tela 004
 Já os campos matricula, CPF e Rg, deverão ser formatados para receber números com a casa
decimais zerada.
 
Tela 005
 E por último o campo data de nascimento, onde fizemos a abreviação para nasc deve ficar
formatado na categoria data.

 
Tela 006
 Pronto, esta criado o nosso banco de dados, veja que bem simples criá-lo, agora abaixo esta
a interface gráfica pronta do sistema.
Tela 007
 Procure criar sem fazer grandes alterações no layout, apenas faça os ajustes necessários,
logo abaixo esta a relação dos objetos utilizados para a criação da mesma, como você pode
ver a mesma é bem simples. Neste sistema você aprender a criar códigos para cadastrar,
pesquisar, editar e apagar os registros. No próximo tutorial começarei a ensinar a codificação
do mesmo. Depois que fizermos a codificação básica podemos inserir outros códigos na
mesma para ir dando melhor dinâmica ao sistema.
 Relação dos objetos:
 Formulário
 Name para projetos
Caption para projeto teste
Height  para 426
Width para 364
 Label
 01 Label
Caption para Cadastro de Gerentes
Height para 18
Width para 210
 02 Label
Caption para Código
Height para 12
Width para 24
 03 Label
Caption para Filial
Height para 12
Width para 30
 
04 Label
Caption para Matricula
Height para 12
Width para 54
 05 Label
Caption para Nome
Height para 12
Width para 42
 06 Label
Caption para CPF
Height para 12
Width para 24
 07 Label
Caption para RG
Height para 12
Width para 24
 08 Label
Caption para Data Nascimento
Height para 12
Width para 90
 09 Label
Caption para Total Registro BD
Height para 12
Width para 90
 10 Label
Caption para N
Height para 12
Width para  30
 11 Label
Caption para CODF
Height para 12
Width para 30
 Caixa de Texto
Todas as caixas com a mesma configuração abaixo.
 Name permanece o mesmo
Height para 16
Width para 72
 Botões
 Botão 01
Caption para Cadastrar
Height para 20
Width para 53
 Botão 02
Caption para Pesquisar
Height para 20
Width para 53
 Botão 03
Caption para Editar
Height para 20
Width para 53
 Botão 04
Caption para Pagar
Height para 20
Width para 53
 Botão 05
Caption para Fechar
Height para 20
Width para 53
 Moldura
 Moldura 01
Caption para Dados
Height para 228
Width para 330
 Moldura 02
Caption para Comandos
Height para 60
Width para 330 

Conclusão:

Neste tutorial ensinei você a criar um banco de dados a partir de uma planilha do Excel,
mostrando como deve fazer as formatações dos campos e também a interface gráfica para
que possa ser criado a partir do próximo tutorial códigos para interagir com o banco de
dados, mostrado de forma  simples direta e objetiva através das telas o que vai facilitar o seu
aprendizado.
DICA - 12
Bom, vamos começar aprender a codificar a interface gráfica do aplicativo, irei passar para
vocês códigos básicos que irão cadastrar, editar, pesquisar, apagar e fechar  o formulário.
 O primeiro código que irei ensinar terá uma função de contar quantos registros tem o banco
de dados, este é muito útil, o mesmo esta logo abaixo e deve ser inserido dentro do
formulário no seu evento initialize, para que quando  o mesmo for aberto o código já inicie
automático.

Label11 = Application.WorksheetFunction.CountA(Plan1.Columns(1)) – 1
Tela  001
 Começamos o código definindo o objeto que vai receber os dados, neste caso vai ser a label
11, depois utilizamos o método aplicação mais a função contar e dentro do parênteses o
nome da planilha que neste caso vai ser Plan1 vamos contar por coluna – 1, isso porque a
primeira linha é o cabeçalho.
DICA - 13
 Vamos  agora criar  código para inserir os registros no banco de dados, este iremos colocar
dentro do botão cadastrar no seu evento clic, começaremos utilizando duas variáveis uma
para conectar outra para abrir, então temos que declarar as mesmas para que funcione.
 Dim bd As Database
Dim RS As Recordset
 
Tela 001
 Feito isso precisamos abrir o banco e a tabela.
Set bd = OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name, False, False, "excel
8.0")
Set RS = bd.OpenRecordset("PLAN1$", dbOpenDynaset)
 Note que vou mostrar de forma objetiva os códigos para que você possa vir a compreender
melhor estes códigos e depois utiliza-los na criação de algum sistema para você.
Tela 002
 Agora vem uma parte que é o seguinte, o código não é gerado automático, então, você é
quem deverá inserir o mesmo, mas aí eu pensei uma forma do usuário não repetir o mesmo
código, então criei uma condição, como sabemos o numero de registro no banco, por
exemplo, temos apenas um registro, então, o código deverá ser maior do que 1 para poder
ser cadastrado. Para isso usei a condição abaixo, a mesma só era entrar para executar os
comandos para o cadastramento dos registros, dentro desta condição é que iremos criar os
códigos de cadastro.
 If Me.TextBox1 > Me.Label11 Then
 End If

 
Tela 003
 Agora começamos a criar a função de cadastro:
                      Dim cadastro(1 To 7)
                    cadastro(1) = UCase(Me.TextBox1)
                    cadastro(2) = UCase(Me.TextBox2)
                    cadastro(3) = UCase(Me.TextBox3)
                    cadastro(4) = UCase(Me.TextBox4)
                    cadastro(5) = UCase(Me.TextBox5)
                    cadastro(6) = UCase(Me.TextBox6)
                    cadastro(7) = UCase(Me.TextBox7)
                     cadastro(7) = UCase(Me.TextBox1.Value)
 Dim PROJETO As Object
            Dim L, i
            Set PROJETO = Plan1.Cells(1, 1).CurrentRegion
            L = PROJETO.Rows.Count + 1
                        If Len(Me.TextBox1) = 0 Then
                                 MsgBox "VOCÊ NÃO DIGITOU NENHUM DADO PARA INCLUSÃO", vbCritical,
"CADASTRO DE DADOS"
                         Else
                                      For i = 1 To 7
                                      Plan1.Cells(L, i).Value = Trim(cadastro(i))
                                   Next i 
                            MsgBox "CADASTRO", vbInformation, "EFETUADO COM SUCESSO"
                                            ThisWorkbook.Save
                           End If 
               Exit Sub
         Else
        MsgBox "No campo COD digite um número maior do que há no campo  registro no banco
para casdastrar." 
End If
Note que a mesma é bem extensa, mas irei explica-la de forma bem objetiva para não
confundi-lo, na primeira parte colocamos os objetos que neste caso serão os textbox, e do
lado esquerdo cada cadastro(1) representa uma coluna na planilha, na segunda parte vamos
fazer com que seja inserido os registros através do for, antes testamos o primeiro text que
nesta caso é o código, se o mesmo estiver vazio aparecerá uma mensagem, isso ocorre
porque você terá que inserir o código.
 Caso o registro tenha sido inserido corretamente, apresentamos uma mensagem para o
usuário saber que ocorreu tudo bem e logo abaixo colocamos um comando para salvar as
alterações na planilha, para que na hora que você fechar o sistema não tenha a necessidade
salvar a planilha.
 Espero que você tenha compreendido o funcionamento dos códigos, no inicio pode parecer
meio confuso, mas é questão de tempo para que venhas compreender melhor.
Tela 004 

Conclusão:

Neste tutorial ensinei você a criar  o código que ira mostrar quantos registros armazenados
existem no banco de dados e também como criar o código para cadastrar os registros,
mostrado de forma  simples direta e objetiva através das telas o que vai facilitar o seu
aprendizado.
 DICA - 14
Bom, no tutorial anterior você aprendeu a criar o código para inserir registros no banco de
dados, vamos aprender nesse a criar o código pra retornar os registros do banco de dados.
Serei bem objetivo quanto a explicação de forma que você possa entender sem maiores
dificuldades, lembrando sempre que para aprenderemos a programar é bom sempre ter um
curso de lógica de programação onde aprendermos melhor a utilizar o nosso raciocínio para
desenvolvimento de sistemas, mas claro que nestes códigos que estou ensinado para você
não há esta necessidade.
 Uma das primeiras coisas que temos que fazer é definir qual o campo que iremos utilizar
para buscar as informações, ou seja, neste pequeno sistema que estamos criando, vamos
utilizar como exemplo o campo “FILIAL”, através dele é que iremos digitar o nome da filial
que desejamos localizar. O primeiro código sempre é declarar as variáveis e conectar e abrir o
banco de dados, esta parte de código ensinei no tutorial anterior, então, irei apenas coloca-
lo aqui novamente para irmos montando o código.
Dim bd As Database
Dim rs As Recordset
 Set bd = OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name, False, False, "excel
8.0")
Set rs = bd.OpenRecordset("PLAN1$", dbOpenDynaset)

 
Tela 001
 Vamos começar inserindo uma linha de código que irá testar se o nome que estamos
buscando esta no banco de dados,  em nosso caso este campo é “FILIAL”, digamos por
exemplo que você esteja buscando uma filial com o nome “filial 2” se esta não estiver ira
aparecer uma mensagem informando que a mesma não foi localizada ou não esta cadastrada
no banco de dados, essa mensagem fica ao seu critério, o código  que faz esta função, a
mesma é bem simples, apenas estou dizendo se o textBox1 que é o código for igual a vazio
então aparece a mensagem, isso porque é neste sistema é obrigado retornar o código do
sistema.
 If Me.TextBox1 = "" Then MsgBox "Nome não cadastrado", vbInformation, "Banco de dados":
Exit Sub
 
Tela 002
 Vou mostrar para você  como ira aparecer esta mensagem na tela, lembrando que este deve
ficar por em baixo dos demais código:

 
Tela 003
Seguindo a criação do código utilizares o control “DO UNTIL” esta vai fazer com que retorne
os registros do banco.
 LIN = 2
 Do Until rs.EOF
 LIN = LIN + 1
rs.MoveNext
Loop
 No inicio temos LIN=2, ou seja queremos começar a pesquisar a partir da segunda linha do
banco, porque a primeira é o cabeçalho, utilizamos o Do Until mais a variável do banco rs.EOF
para percorrer  os registros até o final em busca do que digitamos, se for verdadeiro, ou seja,
no momento que ele encontra o registro ele retorna o mesmo, para que faça esta
movimentação utilizamos rs.moveNext em forma de loop, parece um pouco complicado, mas
resumindo ira percorrendo linha a linha da planilha na qual transformamos em banco de
dados atrás do registro.

 
Tela 004
 Para terminar temos que colocar mais um código, onde iremos selecionar o campo que
iremos buscar fazendo com o mesmo um teste, mais os campos com seus objetos para
mostrarmos os registros retornados.
 If rs("FILIAL") = Me.TextBox2.Text Then
        Me.TextBox1 = rs.Fields("N")
        Me.TextBox3 = rs.Fields("MATRICULA")
        Me.TextBox4 = rs.Fields("NOME")
        Me.TextBox5 = rs.Fields("CPF")
        Me.TextBox6 = rs.Fields("RG")
        Me.TextBox7 = rs.Fields("NASC")
        Me.TextBox8.Text = LIN 
End If
 Do lado esquerdo os objetos, que em neste caso são os TextBox passando o sinal de “=” mais
os campos o nome dos campos do banco de dados.
 
Tela 005
 Esta pronta o código que ira retornar os registros do banco de dados, este é bem simples, ira
retornar apenas um registro de cada vez, existem situações que precisamos retornar vários
registros, por exemplo, digamos que você tem um cadastro de clientes e neste existem
cadastrados 10 pessoas que iniciam com o no Neli, poderia ser criado um código para
retornar estes 10 nomes ao mesmo tempo, isso irei ensinar nos próximos tutorias, este
mesmo código que acabamos de criar pode ser ainda mais incrementado, mas preferi fazer
assim para irmos devagar, ao longo dos demais tutorial poderei voltar a fazer mais alterações
no mesmo.
 O importante, e este é meu objetivo principal é que você posso utilizar estes códigos
adaptando as suas necessidades do seus sistema, abaixo aparece a tela com uma pesquisa
efetuada.
 
Tela 006
 Outro fator importante para que os códigos funcione corretamente é ativar a biblioteca
chamada Microsof Dao, no editor de VBA, clique em ferramentas, referências e depois ative a
mesma.

 
Tela 007 

Conclusão:

 Neste tutorial ensinei você a criar  o código para  retornar do bando de dados os registros e
também como ativar a biblioteca Microsoft Dao,  sempre mostrando passo a passo através de
telas  e explicando o funcionamento das  funções de forma  simples direta e objetiva através
das telas o que vai facilitar o seu aprendizado. 
 NOTA: A partir deste sistema, irei oferecer serviços de acessória em desenvolvimento de
sistemas em Excel, portanto, se você quiser adaptar ou criar um sistema conforme sua
necessidade, entre em contato comigo através do e-mail:erico_2223@yahoo.com.br. (Eric é
o autor deste conteúdo do qual fiz a copia para meu site)

 http://www.josevalter.com.br/

José Valter
www.josevalter.com.br
Procurando para o internauta o melhor que a web oferece, totalmente grátis para o seu
desenvolvimento.

Você também pode gostar