Escolar Documentos
Profissional Documentos
Cultura Documentos
O editor do Visual Basic será exibido em outra janela do lado direito da janela sugira
a sub-rotina Ordenar que é o nome da macro entre os comando Sub Ordenar e End Sub
você encontrara todos os comandos em visual Basic necessários para executar a macro.
Se você conhecer a linguagem Visual Basic, poderá edita-la e aperfeiçoa-la.
Também é possível criar sub-rotinas e funções manualmente, além disso podemos criar
formulários para incluir excluir e editar dados de uma planilha, transformando-a em um banco
de dados de fácil acesso e manipulação.
Como exemplo vamos mostrar como criar uma agenda no Excel. Essa agenda
possuirá uma planilha para armazenar dados como nome e e-mail por exemplo e um
formulário que será utilizado para a entrada e a edição desses dados.
Planilha
Formulário
Vamos começar criando uma agenda com poucos campos, posteriormente essa
planilha será alterada. Clique no campo superior esquerdo dos campos, na interseção entre
os identificadores das linhas e colunas para selecionar todas as células, clique na guia
Pagina Inicial e clique alinhar no meio e centralizar.
De um clique duplo na aba inferior da planilha e altere seu nome para Dados.
A janela do formulário será exibida neste campo, você vera que a janela e idêntica
a que encontramos em outros aplicativos do Windows possuindo uma barra de títulos e um
botão fechar para alterar seu tamanho use os manipuladores centrais ou de cantos, note
que conforme você altera o seu tamanho suas medidas também são alteradas no painel de
propriedades.
Vamos mudar o nome do formulário, portanto de um clique duplo sobre a
propriedade (Name), e edite para FrmAgenda e pressione Enter, para alterar o nome que e
exibido na barra de titulo da janela clique duas vezes na propriedade Caption e digite agenda
o restante das propriedades não precisa ser alterada salve o projeto.
Note que é exibido o texto Label1, que é o mesmo nome do controle que acabamos
de criar o nome desse rotulo não e crítico, portanto, podemos deixar como esta.
De um clique duplo a frente da propriedade Caption e altere para código altere seu
tamanho usando os manipuladores, para move-lo simplesmente araste-o pelo formulário,
cliquem em salvar.
Em Caption Digite o número 1. Clique em fonte e no botão com três pontos abrira a
janela fontes, nessa janela selecione negrito e clique em .
Para deixar o texto centralizado clique TextAlign e escolha 2-fmTextalignCenter e de
enter.
Em seguida acrescente outro rotulo abaixo desse ultimo mude a propriedade
Caption para Nome, crie um rotulo mais a baixo e modifique seu texto para E-mail quando
termina salve o projeto.
Agora vamos ver como inserir os campos de texto no formulário de nossa agenda,
esses campos são utilizados para exibir os dados da planilha e para você inserir e editar
seus textos. Clique no formulário e escolha a caixa de texto na caixa de ferramentas.
Trace uma caixa abaixo do campo nome grande suficiente para abrigar um nome
longo. Mude a propriedade Name para nome, Altere a propriedade BordeStyle para 1-
frmBorderStyleSingle, criando uma moldura solida em torno do texto.
Clique no formulário e selecione a caixa de texto novamente, trace outra caixa
abaixo de E-mail do mesmo tamanho da caixa anterior altere seu nome para TxtE-mail. Note
que os nomes dos controles não podem conter acento espaço ou outros caracteres
especiais, mude sua borda para frmBorderStyleSingle para ficar idêntica a anterior.
Durante o desenvolvimento do projeto você poderá alterar o seu tamanho e outras
propriedades, para que se adapte as suas necessidades. Salve o projeto.
Selecione o primeiro botão e altere o seu nome para cmdAnterior, em Caption digite
o símbolo de menor, selecione o segundo botão e altere seu nome para cmdProximo, mude
seu texto para o símbolo de maior na propriedade Caption.
Adicione mais um botão abaixo do campo E-mail um pouco maior dos que os
anteriores, altere seu nome para CmdNovo e seu texto (capition) para Novo, esse botão
servira para adicionar um novo registro a Agenda.
Crie outro botão ao lado desse e mude seu nome para CmdSalvar, atribua o texto
Salvar a propriedade Caption, posteriormente vamos usar esse botão para salvar o registro
que estiver sendo exibido no formulário.
Crie mais um botão ao lado desse como o nome CmdExcluir e com o texto Excluir,
que será usado para remover o registro que estiver sendo exibido no formulário.
Trace outro botão ao lado do botão Excluir, mude seu nome para CmdLimpar e seu
texto para limpar, vamos usar esse botão para limpar os campos do texto do formulário.
Finalmente adicione um botão ao lado do botão limpar e altere seu nome para
CmdFechar e seu texto para Fechar, esse botão fechara o formulário.
Uma observação importante e que as ações executadas por esses botões são
programadas por meio de códigos em Visual Basic associados a eles. Salve o projeto.
A linguagem Visual Basic
Nas aulas anteriores você aprendeu como adicionar controles a um formulário, como
rótulos, caixa de textos e botões. Porem também e necessário criar comandos e
procedimento para que o aplicativo execute as operações que esperamos, agora vamos
mostrar os fundamentos da linguagem Visual Basic, mais para frente mostraremos outros
recursos dessa linguagem enquanto criamos os códigos necessários.
Intrusões e variável podem ser colocados em módulos que são arquivos de textos
que contem apenas esse tipo de arquivo, ou em código de formulários como veremos mais
a frente. Todas as intrusões de seu aplicativo devem estar em sub-rotinas que possuem um
nome iniciadas por Sub calcular () e terminadas em End Sub, esses blocos de instruções
também são chamados de procedimentos.
Você também pode colocar instruções em funções que retornam valores, para obter
um resultado você pode inserir os valores diretamente nas chamadas da função, além de
chamadas pelo nome de sub-rotinas e funções o Visual Basic pode executar código de
acordo com eventos, isso significa que é possível associar código ao um botão por exemplo,
as propriedades dos controles e outros objetos também podem ser configurados pelo Visual
basic.
A variável Linha determina qual linha será lida ou escrita na planilha. A variável
Agenda e declarada como uma planilha posteriormente vamos associar essa variável a
planilha dados da Agenda. A variável TotalReg conterá o número total de registros na
planilha, isso facilitara sua manipulação quando navegarmos polos registros por exemplo.
Salve o projeto.
Digite as linhas
A primeira linha associa a variável Agenda com a planilha com o mesmo titulo, a
segunda exibira o formulário. Salve o projeto.
Agora vamos testar o formulário clique duas vezes em forme agenda e em executar
na barra de ferramenta do editor do Visual Basic.
Se você não cometeu nenhum erro de digitação ate agora o formulário se abrirá,
note que sua janela e igual a qualquer outro aplicativo do Windows, você poderá digitar
textos na caixa, mais ainda nenhum botão funcionara, pois ainda faltam as instruções para
isso feche a janela e salve o projeto.
Vamos adicionar o código para o formulário fechar quando o usuário clicar no botão
fechar. Para associar o clique do mause sobre um botão a um seguimento de código, basta
dar um clique duplo sobre o botão, portanto de um clique duplo sobre o botão fechar, note
que a sub-rotina que controla o evento clique do botão é criada automaticamente digite a
seguinte linha. O comando Unload fechará o objeto Frmagenda que é o nosso formulário.
Agora vamos criar o código para limpar os campos de textos portanto de um clique
duplo sobre o botão limpar dessa vez vamos criar uma sub-rotina com o nome
LimpaCampos, que poderá ser acessada por outras sub-rotinas incluindo a do evento clique
do botão limpar posicione o cursor abaixo desse ultimo bloco de código e digite, Sub
LimpaCampos e pressione Enter, veja que o editor acrescentou os parênteses e o
fechamento da sub-rotina digite o seguinte código.
Na primeira linha determinamos que o campo com o código deve ser o mesmo do
campo registro da planilha, nas linhas seguintes determinamos que o conteúdo dos textos
das caixas devem ser nulos conforme indicados pelas duas aspas.
A Linha Dim Codigo inicializa a variável Codigo, que será utilizada mais adiante. E
essa linha If TxtNome.Value = "" Then, verifica se o campo nome do formulário esta vazio,
se estiver exibira uma caixa de dialogo pedindo para digitar o nome. E essa linha MsgBox
"Favor digitar o Nome", vbOKOnly + vbCritical, "Salvar Registro", possui diversas
argumentos separados por virgula, o primeiro argumento e a mensagem que e exibida pela
caixa de dialogo, o segundo pode ser composto por diversas variáveis ou constantes do
Visual Basic, nesse exemplo essas constantes determinam que a caixa de dialogo conterá
apenas um botão OK e será exibido o ícone de parada critica, o terceiro argumento
representa o titulo da caixa de dialogo. Você poderá encontrar essas e outras opções
consultando a ajuda do visual Basic.
Vamos mostra a partir de agora como criar as instruções relacionadas com o botão
novo para iniciar um novo registro, em primeiro lugar de um clique duplo sobre o botão novo
do formulário digite os códigos.
A primeira linha Chama a sub-rotina para limpar os campos de texto do formulário,
a segunda linha atualiza a variável TotalReg com o número total de registro da planilha, a
terceira linha, adiciona 1 na variável linha apontando para um novo registro.
Digite mais um nome e seu respectivo e-mail e clique em salvar. Veja que conforme
você vai salvando os registros esses são adicionados a planilha ao fundo, sendo cada célula
preenchida corretamente. Quando terminar feche o formulário.
Habilitando o botão Excluir da agenda
Nesta aula vamos ver como incluir as instruções necessárias para exclusão de
registros quando o botão excluir for clicado, de um clique duplo sobre o botão excluir para
abrir sua sub-rotina adicione as instruções.
As instruções acima vai executar vários passos primeiro criam uma variável, a
variável Resposta, que vai receber o mensagem de que você “Deseja Excluir este registro?”.
Se você clicar no botão Não da mensagem a sub-rotina e fechada e se clicar no botão sim,
o registro da planilha e excluído, e o total de registros da agenda e atualizado e a variável
linha apontara para o primeiro registro da planilha, que é a segunda linha, pois a primeira e
o cabeçalho. Se o total de registro for maior que um será exibido o primeiro registro, caso
contrário serão exibidos apenas os campos em branco. Salve o projeto, deixe para testar a
exclusão dos registros depois que incrementemos os códigos dos botões próximo e anterior
do formulário.
Vamos ver a seguir como adicionar os códigos para os botões anterior e próximo,
de um clique duplo sobre o botão anterior do formulário em seguida acrescente o código.
A primeira linha Subtrai 1 da variável linha apontando para a linha anterior da
planilha, depois verificamos se a linha e menor do que 3, se for indicará que e o primeiro
registro da planilha, então ajusta a variável linha para o valor 2, em seguida desabilita o
botão anterior porque não a mais registros anteriores para exibir. E habilita o botão próximo.
Agora vamos configurar o botão próximo, clique em exibir objeto na barra de projeto,
de um clique duplo sobre o botão próximo e digite o código.
A primeira linha verifica se a variável linha e maior que um se for habilita o botão
anterior. A linha Linha = Linha + 1 adiciona 1 a variável Linha, a próxima linha verifica se a
linha e maior o igual ao total de registros se for configura a linha com o total de registros e
desabilita o botão próximo, depois disso exibe o registro apontado por linha, salve seu
projeto e clique em executar, vá clicando no botão próximo até o último registro e veja que
o botão e desabilitado, clique no botão anterior ate o primeiro registro e veja que o mesmo
e desabilitado, indicando que não há mais registros antes desse.
Vamos aproveitar para testar o recorço de exclusão de registros escolha um deles
e clique em excluir, surgira uma mensagem se você realmente deseja excluir o registro atual
se você clicar em não a caixa se fechara e nada será alterado, se você clicar em sim o
registro será excluído.
Neste modulo vamos aperfeiçoar a agenda que criamos nas aulas do modulo
passado, se a planilha agenda não estiver aberta abra no Excel, vamos salvar com outro
nome para preservar oque fizemos ate agora. Portanto clique no botão do Officer e em salvar
como e salve como o nome da Agenda2. Em primeiro lugar vamos adicionar mais detalhes
ao cadastro que criamos como: endereço e telefones entre outros você também poderá
modificar, para criar cadastro de clientes, fornecedores, empregados etc.
Depois de salva-la com outro nome abra a planilha selecione as linhas com os
nomes cadastrados e clique com o botão direito sobre elas e escolha excluir, clique na célula
registro e digite 0.
Vamos Inserir as colunas necessária para abrigar os novos campos. Selecione a
coluna E-mail clique com o botão direito e escolha inserir, uma nova coluna e criada a
esquerda da colecionada clique em seu cabeçalho e digite endereço.
Crie o rotulo número ao lado do endereço e sua respectiva caixa de texto, altere seu
nome para txtNumero e sua borda para Single
Continue adicionando os rótulos e as caixas de texto, usando os nomes usado nessa
tabela.
Esta aula vamos alterar os códigos em Visual Basic para utilizar os novos campos,
antes de iniciar as modificações, clique no botão da planilha na barra de tarefa do Windows.
Anote o conteúdo de cada uma das colunas associando com o numero, a coluna (A) possui
o item código e seu numero e 1 a coluna seguinte e 2 com o item nome anote todas as
colunas seguindo esse padrão.
Quando terminar abra o editor do Visual Basic localize a sub-Rotina limpa campos
selecione e copie o código.
Posicione o cursor na linha abaixo dessa instrução e cole-o altere seu nome para
txtEndereco, repita o procedimento para cada um dos campos de texto criando novas linhas
e incluindo o nome das novas caixas de texto
Localize a sub-rotina SalvarReg copie a segunda linha de código e cole abaixo dela
mesma, altere o numero após a variável número na sequência, consulte o número anotado
no início. No nosso exemplo a coluna 3 equivale ao endereço, portanto mudamos o nome
da caixa para txtEndereco.
Faça o mesmo colando outras linhas e associando o numero da coluna com o nome
da caixa de texto correspondente.
Repita o procedimento com a Sub-rotina MostrarReg, altere o nomes das caixas e
depois o numero correspondente da coluna.
Quando terminar salve seu projeto e execute-o, cadastre uma pessoa e clique em
salvar, note que os registros São salvos nas colunas corretas. A agenda esta pronta porem
podemos aprisoar seu acesso.
Nesta aula vamos ver como você pode criar um menu para acessar o formulário ou
a planilha a partir de botões colocados em uma pagina de apresentação, abra a planilha e
araste a aba Plan2 para a esquerda para exibi-la na frente da planilha dados.
Vamos remover a grade para criarmos um fundo colorido clique no encontro das
linhas e colunas para selecionar toda a planilha, clique na aba inicio e clique na seta ao lado
do botão preenchimento para abrir a opção de cores escolha uma cor clara que servira de
fundo.
Em seguida vamos criar uma caixa de texto na planilha clique na aba inserir e
escolha caixa de texto, araste o cursor sobre a planilha para criar uma moldura um pouco
menor que o fundo, use os manipuladores para redimensionar as caixas.
Clique dentro do campo e digite Agenda, pressione Enter e digite escolha uma das
opções abaixo: Selecione o título e altere a fonte sua cor e tamanho.
Clique na borda do quadro abra a palheta preenchimento e escolha uma cor para
seu fundo.
Vamos criar dois retângulos que servirão como botões do acesso a agenda e a
planilha. Portanto clique em inserir e escolha formas, clique em retângulo com cantos
arredondados, e trace um retângulo sobre a caixa de texto, quando terminar clique com o
botão direito sobre o retângulo e escolha editar texto digite abrir agenda, repita o
procedimento e insira outro retângulo com o texto Abrir planilha.
Criando ações para os botões do menu da agenda
Nesta aula vamos atribuir as ações aos botões para abrir a agenda ou à planilha,
quando o usuário clicar nos respectivos botões, antes de fazê-lo, clique sobre o botão da
agenda e mude seu nome na barra de formulas para btAgenda, faça o mesmo com o
segundo botão alterando seu nome para btPlanilha.
Clique com o botão direito sobre o botão agenda e escolha atribuir macro, a caixa
Atribuir macro surgira
Clique em novo e sugira o código do evento clique. E digite FrmAgenda.Show, esse
comando exibira o formulário.
Feche o editor do Visual Basic e salve seu projeto para testar devemos fechar a
planilha e abri-la novamente para que os códigos de inicialização sejam atualizados. Abra a
planilha novamente e clique no botão Abrir Agenda e o formulário surgirá.
Agora você pode inserir editar e excluir registros por meio do formulário quando
terminar clique em fechar.
Agora vamos criar o código para abrir a planilha clique sobre o botão abrir planilha
com o botão direito do mause e escolha Hiperlink.
A caixa Inserir hiperlink se abrirá para que você escolha um elemento que será
aberto pelo clique do botão clique em colocar nesse documento selecione a planilha dados
nesse campo e clique em OK
De um clique fora do botão para remover sua seleção em seguida clique sobre ele
novamente a planilha será exibida conforme esperávamos salve sua planilha e o projeto
estará pronto