Escolar Documentos
Profissional Documentos
Cultura Documentos
PROGRAMANDO EM VBA
NDICE
Programao VBA. Parte 1 ......................................... 02 Programao VBA. Parte 2 ......................................... 06 Programao VBA. Parte 3 ......................................... 12 Programao VBA. Parte 4 ......................................... 20 Programao VBA. Parte 5 ......................................... 26 Programao VBA. Parte 6 ......................................... 32 Programao VBA. Parte 7 ......................................... 39 Programao VBA. Parte 8 ......................................... 45 Programao VBA. Parte 9 ......................................... 51 Programao VBA. Parte 10 ....................................... 56 Programao VBA. Parte 11 ....................................... 61 Programao VBA. Parte 12 ....................................... 68 Programao VBA. Parte 13 ....................................... 75 Programao VBA. Parte 14 ....................................... 80
Tela 001
Tela 002 Na parte superior temos os menus arquivo, editar e assim por diante, iremos aprender apenas os necessrios 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.
Tela 003 Os principais comandos que utilizaremos sero os seguintes. EXIBIR: CODIGO: Este ser utilizado toda a vez que precisarmos abrir a janela de cdigo 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 vrias ferramentas para utilizar no desenvolvimento do sistema.
Tela 004 INSERIR: INSERFORM: Este ser utilizado para inserir o formulrio no projeto. MODULO: Este ser utilizado para inserir mdulos no projeto.
Tela 005 EXECUTAR: EXECUTAR USERFORM: Este ser utilizado para iniciar o sistema. INTERROMPER: Este ser utilizado para pausar o sistema.
Tela 006 FERRAMENTAS: REFERNCIAS: Este utilizaremos para ativar determinadas bibliotecas quando for necessrio. Conhecido os principais menus e comandos que utilizaremos, no prximo tutorial iremos conhecer a caixa de ferramentas.
Concluso:
Neste tutorial comeamos a conhecer o editor de visual basic do Excel, mostrei os principais menus que iremos utilizar com um breve resumo da funo de cada, tudo de forma simples e objetiva, na prxima parte do tutorial continuaremos a conhecer o editor. Bons estudos e at a prxima parte.
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 nmeros como referencia, ou seja, a seta ser o objeto numero 1, a letra A ser 2 e assim sucessivamente. Objeto 1 Ferramenta de marcao representado pela seta: Esta utilizaremos para manipular os objetos, como dimensionar a largura do formulrio, entre outros. Objeto 2 Label representada pela letra A: Esta utilizaremos quase sempre para identificar um campo ou usar como uma varivel. Para inserir qualquer objeto basta selecion-lo e clicar sobre o formulrio. Objeto 3 Caixa de texto representado pela letra ab|: Esta utilizaremos para inserir dados, como por exemplo, senha e login. Objeto 4 Caixa de combinao: Esta utilizaremos quase sempre para disponibilizar algumas opes que os usurios podero selecionar, digamos que voc tenha uma lista de trs nomes, Ana, Paula e Diene num acesso via login e voc acessa este com algum deste nomes, ento voc no 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 combinao, a diferena que esta ira disponibilizar os nomes em forma de listas. Tambm podemos utilizaras para mostrar vrios registros do banco de dados. Objeto 6 Caixa de seleo: Esta utilizaremos quando oferecemos ao usurio uma lista de opes 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 emails, ento, voc poder escolher varias entre as que o mesmo disponibiliza. Objeto 7 Boto de opo: Este tem funo parecida com a caixa de seleo a diferena que podemos apenas marcar uma opo de cada vez, um exemplo fazer um formulrio onde usurio poder selecionar como resposta sim ou no.
Tela 003 O processo o mesmo para as demais ferramentas, para inserir uma caixa de texto selecione a mesma e clique sobre o formulrio.
Tela 004 Bom agora que j conhecemos e sabes inserir os objetos, teremos que aprender sobre suas propriedades atravs destas que iremos inserir cor, alterar fonte, tamanho entre outros. Vamos comear pela Label, insira uma label no formulrio com a mesma selecionada ative a janela de propriedades, irei mostrar as principais:
Tela 005 Propriedade Name: Atravs desta poderemos modificar o nome da label, ser til para a hora que formos programar o cdigo. Irei mostrar um exemplo de coma alterar esta propriedade, as demais irei apenas explicar a funo de cada propriedade.
10
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 tambm.
11
Concluso:
Neste tutorial mostrei como inseri um formulrio, a ativar a caixa e conhecer algumas das suas principais ferramentas mostrado atravs de telas sua aparncias com as propriedades modificadas, tudo de forma simples e objetiva, na prxima parte do tutorial continuaremos nosso aprendizado. Bons estudos e at a prxima parte.
12
Tela 001 Agora vamos ativar a janela de propriedades selecione a label se mesma no tiver, clique no menu exibir janela de propriedades.
13
Tela 002 Vamos conhecer suas principais propriedades. Name: Esta para substituir o nome Label1, usamos quase sempre para fazer referncia de cdigos 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 formulrio. Enable: Esta quando selecionada false no 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, no ira mostra a label durante a execuo 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 formulrio, onde iremos modificar as suas propriedades da seguinte forma: Caption para MODIFICANDO AS PROPRIEDADES
14
Tela 003 Agora selecione a propriedade height e altere conforme a nosso definio logo
acima:
15
Tela 004 Por ltimo vamos alterar a propriedade widht conforme a definio logo acima.
Tela 005 Conhecendo as principais propriedades da label e sabendo os processos para modific-las, lembrando que as propriedades dos demais objetos, so quase as mesma e iremos aprendendo conforme nosso estudo.portanto, iremos criar um pequeno cdigo. O objeto deste cdigo clicar num boto e aparecer a seguinte frase: Estou aprendendo a programar vba. Ento no formulrio os objetos que precisaremos de um
16
Tela 006 Modificada as propriedades, vamos ativar a janela de cdigo do boto, para isso clique no men exibir cdigo fonte.
Tela 007 Dentro do cdigo do boto, cada objeto dentro da janela de cdigo existe um determinado evento, neste caso vai ser o evento clic, que ocorre sempre quando o boto for clicado, mas o que interessa a criao do cdigo neste momento. Sempre quando quiser que aparece uma mensagem digitamos o seguinte cdigo: Iniciamos com.
17
Tela 008 Agora basta voltar a exibir o formulrio, para isso no men exibir clique em objeto.
Tela 009 Agora inicie o aplicativo no menu executar e clique no boto para visualizar a mensagem.
18
Tela 010
Concluso:
Neste tutorial mostrei as principais propriedades do objeto label, lembrando que os demais objetos tem suas propriedades em alguns casos iguais, assim iremos conhecendo as demais ao longo dos tutoriais, tambm ensinei como inserir um formulrio a label, alm de criamos o primeiro cdigo, para a elaborao de uma mensagem, tudo de forma simples e objetiva, na prxima parte do tutorial continuaremos nosso aprendizado. Bons estudos e at a prxima parte.
19
Tela 001 Agora vamos criar um cdigo para inserir a data, a primeira coisa a fazer antes de escrever o cdigo definir em qual objeto utilizaremos para mostrar a mesma, aconselho a utilizar um rotulo, ento, utilizaremos a mesma para visualizar a data, insira um label no
20
Tela 002 Temos que definir onde inserir o cdigo, o que vamos criar para a data deve ser inserido no formulrio na sua propriedade initialize, esta propriedade executa o cdigo assim que inicializado o formulrio, portanto, quando rodarmos o aplicativo o cdigo ser acionado e a data ser mostrada atravs do objeto label. Para isso clique duas vezes sobre o formulrio e depois seleciona a propriedade.
Tela 003 A seguir o cdigo para mostrar a data: Label1 = Format(Date, " dd / mm / yyyy")
21
Tela 005 Voc viu que simples criar um cdigo para inserir uma data utilizando programao. Agora vamos fazer com que a data aparece dentro de um objeto textbox quando voc clicar num boto. Para isso insira um textbox e um boto, selecione os mesmo na caixa de ferramentas e clique sobre o formulrio:
22
Tela 006 O cdigo para inserir a data esta pronto, o que temos que fazer modificar o nome do objeto que Label1 para textbox1, ento o cdigo passa a ser assim: Antes: label1 = Format(Date, " dd / mm / yyyy") Agora: TextBox1 = Format(Date, " dd / mm / yyyy") Devemos inserir este cdigo dentro do boto em sua propriedade clique, para que quando clicarmos este cdigo vai enviar a data para o text.
Tela 007 Execute o programa e clique sobre o boto, para que a data seja inserida dentro do
textbox.
23
Tela 008 Vamos criar um cdigo bem simples para fechar o formulrio sem clicar no x, para isso inserira outro boto e dentro do mesmo coloque o seguinte cdigo: Userform.hide Colocamos o nome do formulrio e depois o cdigo Hide.
24
Tela 010
Concluso:
Neste tutorial mostrei como criar um cdigo para inserir datas no formulrio utilizando para isso dois objetos um rotulo ou label como mais conhecida e um textbox, utilizando um boto para fazer a ao, tambm ensinei a inserir um cdigo para fazer o fechamento do formulrio, tudo de forma simples e objetiva, na prxima parte do tutorial continuaremos nosso aprendizado. Bons estudos e at a prxima parte.
25
Tela 001
26
Tela 002
Tela 003
27
Tela 004
Tela 005 O mesmo processo para fazer s subtrao, abaixo o cdigo o exemplo 100 90.
28
Tela 006
Tela 007 Bom, agora s falta fazer a adio, voc deve estar pensando que s substituir o sina de por + mas no, que para adio apenas este sinal de mais ira juntar os nmeros, substitua o sinal de por + e teste 100 + 100, ou resultado ser conforme a tela abaixo:
29
Tela 008 Neste caso temos que criar duas variveis e atribuir valores as mesmas, nos prximos tutoriais irei abordar melhor o uso das variveis. Iremos criar a varivel 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 aps fazer a declarao temos que atribuir o valor para as variveis, como no sabemos qual o valor que o usurio vai digitar atribumos a caixas de texto um e dois, assim ira fazer a soma de qualquer nmero que for digitado. Na ltima parte do cdigo, lembre-se que este esta dentro do boto no seu evento clique, colocamos primeiro a caixa de texto 3 que vai receber e depois a varivel x + y, que nesta altura j possuem um determinado valor que receberam das caixa de texto. Abaixo o cdigo e a soma de 100+100 resultando no valor esperado.
30
Tela 009
Tela 010
Concluso:
Neste tutorial mostrei como criar um cdigo para realizar operaes de adio, subtrao, multiplicao e diviso, expliquei a funo do cdigo tudo passo a passo e de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
31
32
33
Tela 001 2 Formulrio Caption para Seja Bem Vindo! Largura para 240 Altura 180 Name para recebe Label Caption para Seja Bem vindo 2 Label deixar sem modificaes.
34
Tela 002 Criado as interfaces grficas agora vamos codificar o sistema, todo o cdigo ir ser ativado quando clicarmos no boto acessar, ento, o cdigo ser colocado dentro do boto na seu evento clique. A primeira coisa a fazer declarar uma varivel na qual iremos cham-la de nome, sua declarao a seguinte: Dim nome as string
35
Tela 003 O prximo passo repassar um valor para esta varivel que chamamos de nome, vamos supor que no sabemos que nome ser digitado pelo usurio, ento atribumos a caixa de texto que esta com o seguinte name Text_name, ficando assim o cdigo: Nome=text_name
Tela 004 Agora iremos escrever mais dois cdigos, o primeiro que vai fazer com que passamos o valor j armazenado na varivel nome para a label2 que se encontra no 2 formulrio que se chama recebe. Para fazermos isso digitamos primeiro o nome do
36
Tela 005 Agora falta pouco para terminamos o cdigo, no formulrio recebe, temos que receber o valor da varivel nome que vai ser passado assim que o usurio clicar no boto acessar, para utilizamos o objeto label2 para receber este valor, ento escrevemos o cdigo dentro do formulrio no evento initialize, ou seja, este ira ativar o cdigo assim que o formulrio for aberto. Label2 = nome
Tela 006 Agora s executar o sistema a partir do primeiro formulrio digitar qualquer nome e clicar no boto acessar.
37
Tela 007
Tela 008
Concluso:
Neste tutorial falei sobre varivel, mostrando sua sintaxe e como utiliz-la atravs da criao de um simples sistema, passo a passo e de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
38
39
Tela 001
Tela 002
40
Tela 003 A condio acima diz o seguinte: Se text_nome.text (text_box a caixa onde voc vai digitar o nome) for igual a VBA ento, vai executar o comando abaixo, que no caso vamos colocar o cdigo para abrir o formulrio. Dim nome As String nome = Text_nome recebe.Label2 = nome recebe.Show
41
Tela 005 Vamos rodar o programa e digitar o nome ERICO, quero fazer uma observao referente ao cdigo, o mesmo faz distino entre minsculas e maisculas e acentos.Ento, 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 no esta conseguindo acessar o sistema. Nos prximos tutoriais iremos comear a interagir mais com os usurios, ou seja, entrada de dados do mesmo direto para o banco de dados, que neste caso vai ser uma prpria planilha do Excel, a irei ensinar para voc alguns ajustes que evitaro certos problemas, e temos que sempre que pensar que apesar do Excel atravs do vba criarmos sistemas o mesmo tem suas limitaes.
42
Tela 006
Tela 007 Agora se digitarmos outro nome ser executado o cdigo da segunda parte do comando, que mensagem.
43
Tela 008
Tela 009
Concluso:
Neste tutorial falei sobre estruturas de controle IF ...ELSE ...THEN, mostrando sua sintaxe e para demonstrar de forma prtica utilizei o sistema que tinha criado no tutorial anterior, passo a passo e de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
44
45
Tela 001 Insira o cdigo dentro boto iniciar, no seu evento clic:
Tela 002 Agora execute o programa e clique no boto iniciar, o resultado deve ser igual ao que aparece dentro da caixa textbox.
46
Tela 003 Este um exemplo bem simples, mas poderamos fazer executar um determinado funo mais complexa por diversas vezes. Agora irei ensinar a carregar um combobox atravs de cdigo, vrias vezes voc ira precisar do mesmo, por exemplo: digamos que tenhamos um formulrio 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 vrias 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 tambm utilizar este exemplo para inserir nome de estados. O cdigo deve ser inserido no formulrio no seu evento
47
Tela 005
Tela 006
48
Tela 007 Antes de fazermos a referncia voc deve apagar o cdigo que ensinei a criar, se no o mesmo no ira funcionar, ou pode fazer este exemplo abrindo outro formulrio 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 clula A1 at A3.
49
Tela 009
Concluso:
Neste tutorial falei sobre estruturas de controle de repetio For ... Next , mostrando sua sintaxe e mostrando sua utilizao de forma prtica para facilitar o seu aprendizado, tambm ensinei como carregar um combobox travs de cdigo e por meio da propriedade Rowsource,passo a passo e de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
50
51
Tela 001 Agora execute o programa e clique sobre o boto, deve aparecer o seguinte resultado:
Tela 002 simples e fcil,veja que no exemplo acima digitei a data direto no cdigo 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 prestao.
52
Tela 003
53
Tela 004 Agora temos que passar os valores para estas variveis, ou seja, este valor ser a data que o usurio vai digitar no textbox1 e textbox2, atravs do seguinte cdigo; Inidata = Me.TextBox1 Fimdata = Me.TextBox2
Tela 005 Agora, temos que inserir o cdigo datediff, da seguinte maneira: Textobox3 = datediff (d,Inidata,Fimdata) Comeamos com o objeto textbox3 que vai receber o valor final, ou seja, o resultado do intervalo. Depois inserirmos o sinal de igual (=) mais cdigo datediff, com o intervalo d que vai ser o nmero de dias, e as duas variveis Inidata e Fimdata.
54
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
Concluso:
Neste tutorial ensinei a calcular intervalos entre duas datas utilizando o cdigo Datediff mostrando sua sintaxe, ensino tambm a criar um exemplo prtico para facilitar o seu aprendizado, de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
55
Tela 001 O primeiro cdigo Day()que tambm pode ser chamado de funo, 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 cdigo day() poder retornar dd. Dentro do boto datas insira o cdigo da seguinte maneira: me.label1=day(date), veja que dentro parnteses insira o comando date, isso porque este ira retornar a data do sistema, e o cdigo day via extrair apenas o dia.
56
Tela 002
Tela 003 Para retornar o ms utilizamos a funo month(), aproveitando o momento antes de inserimos o cdigo para extrair o ms de uma data, irei ensinar voc a comentar o cdigo, isso muito til por exemplo quando desejar escrever qual a funo de um determinado cdigo e tambm comentar para que o mesmo no seja executado quando o programa for inicializado. Para que voc entenda melhor vamos comentar o cdigo que mostra apenas o dia, o que remos que fazer inserir uma aspa simples no inicio do mesmo, assim o cdigo ficara na cor verde, e no ser executado. me.label1= Day (Date)
57
Tela 004 Feito isso vamos inserir o cdigo para extrair a apenas o ms: Me.label1= Month(Date)
Tela 005
58
Tela 006 Para extrair apenas o ano de uma data utilizamos o cdigo year (date). Me.Label1 = Year(Date)
Tela 007
59
Tela 008 Um fator importante para que as vezes precisamos quando estamos programando no editor de vba ativar a biblioteca MicrosoftDAO, se no alguns cdigos no iro funcionar, principalmente quando estamos fazendo a declarao de variveis. Para ativa-la, no editor do vba clique no men ferramentas, referncias, ser aberta uma janela, na mesma selecione a biblioteca e clique no boto ok.
Tela 009
Concluso:
Neste tutorial ensinei voc a utilizar cdigos para fazer manipulaes com datas, podendo extrair apenas o dia, ms ou ano da mesma e tambm a ativar a biblioteca Microsoft DAO, de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
60
Tela 001
61
Tela 002 Iremos inserir o cdigo dentro do boto para que quando o mesmo for clicado abra o formulrio teste, anto, devemos colocar o nome do formulrio que quer abrir, que no nosso caso formulrio_teste mais .show. Formulrio_teste.show
Tela 003 Agora, execute o sistema e clique no boto abrir formulrio teste.
62
Tela 004 Agora voc j sabe com abrir um formulrio, irei ensinar como fech-lo, o cdigo quase o mesmo, apenas fazemos a substituio show por hide. Dentro do formulrio teste insira um boto e dentro do mesmo coloque o seguinte cdigo. Formulrio_teste.hide
Tela 005 Agora vamos aprender um cdigo para inserir planilhas via cdigo, note na tela abaixo que estou com 05 planilhas.
63
Tela 007 O cdigo para inserir planilhas Sheets.add, dentro do boto que criamos acima insira o mesmo.
64
Tela 008 Pronto agora inicie o sistema e clique no boto para inserir planilhas. Para deletar utilizamos o seguinte cdigo: Sheets("nome planilha").Delete, onde inserirmos sheets que representa planilha, entre parnteses colocamos o nome da planilha e por fim delete. Vamos deletar a plan4 como exemplo, crie um formulrio conforme o da tela abaixo e dentro do boto do mesmo digite o seguinte cdigo: Sheets(plan4).delete
Tela 009
65
Tela 010 Agora tambm irei ensinar para voc como disparar uma mensagem quando um formulrio for fechado, isso bem simples e til, como exemplo alertar o usurio sobre determinado assunto ou at mesmo em vez de mostrar uma mensagem fazer com que abra outro formulrio. Vamos colocar a seguinte mensagem Voc esta aprendendo VBA, crie o formulrio conforme a tela abaixo e depois insira o cdigo abaixo, note que colocamos o cdigo que vai fechar o formulrio e em seguida disparamos a mensagem a mensagem assim que o formulrio abrir apenas tocaramos o cdigo me.hide por me.show Me,hide msgboxVoc esta aprendendo VBA dentro do boto.
Tela 011
66
Tela 012
Concluso:
Neste tutorial ensinei voc a utilizar cdigos para abrir e fechar formulrios, inserir e deletar planilhas e tambm como inserir uma mensagem quando o formulrio for fechado, de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
67
Tela 001
68
Tela 002 Agora temos que fazer a formatao de cada campo conforme a sua entrada de registros, ou seja, no campo n podemos deixar com formatao geral.
Tela 003 Ao campos filial e nome devem ficar com a formatao de texto, porque neste devero s receber valores com texto.
69
Tela 004 J os campos matricula, CPF e Rg, devero ser formatados para receber nmeros com a casa decimais serada.
Tela 005 E por ltimo o campo data de nascimento, onde fizemos a abreviao para nasc deve ficar formatado na categoria data.
70
Tela 006 Pronto, esta criado o nosso banco de dados, veja que bem simples cri-lo, agora abaixo esta a interface grfica pronta do sistema.
Tela 007 Procure criar sem fazer grandes alteraes no layout, apenas faa os ajustes necessrios, logo abaixo esta a relao dos objetos utilizados para a criao da mesma, como voc pode ver a mesma bem simples. Neste sistema voc aprender a criar cdigos para cadastrar, pesquisar, editar e apagar os registros. No prximo tutorial comearei a ensinar a codificao do mesmo. Depois que fizermos a codificao bsica podemos inserir outros cdigos na mesma para ir dando melhor dinmica ao sistema.
71
72
73
Concluso:
Neste tutorial ensinei voc a criar uma banco de dados a partir de uma planilha do Excel, mostrando como deve fazer as formataes dos campos e tambm a interface grfica para que possa ser criado a partir do prximo tutorial cdigos para interagir com o banco de dados, mostrado de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
74
75
Tela 001 Comeamos o codigo definindo o objeto que vai receber os dados, neste caso vai ser a label 11, depois utilizamos o metodo aplicao mais a funco contar e dentro do parenteses o nome da planilha que neste caso vai ser Plan1 vamos contar por coluna 1, isso porque a primeira linha o cabealho. Vamos agora criar cdigo para inserir os registros no banco de dados, este iremos colocar dentro do boto cadstrar no seu evento clic, comearemos utilizando duas variaveis uma para conectar outra para abrir, ento temos que declarar as mesmas para que funcione. Dim bd As Database Dim RS As Recordset
76
Tela 001 Feito isso precesimos 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 cdigos para que voc possa vir a compreender melhor estes codigos e depois utiliza-los na criao de algum sistema para voc.
77
Tela 002 Agora vem uma parte que o seguinte, o codigo no gerado automatico, ento, voc quem dever inserir o mesmo, mas a eu pensei uma forma do usuario no repetir o mesmo cdigo, ento criei uma condio, como sabemos o numero de registro no banco, por exemplo, temos apenas um registro, ento, o cdigo dever ser maior do qe 1 para poder ser cadastrado. Para isso usei a condio abaixo, a mesma s era entrar para executar os comandos para o cadastramento dos resgitros, dentro desta condio que iremos criar os cdigos dde cadastro. If Me.TextBox1 > Me.Label11 Then End If
78
79
Tela 004
Concluso:
Neste tutorial ensinei voc a criar o cdigo que ira mostrar quantos registros armazenados existem no bacno de dados e tambem como criar o cdigo para cadastrar os resgistros, mostrado de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
80
81
Tela 001 Vamos comear inserindo uma linha de cdigo 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 no estiver ira aparecer uma mensagem informando que a mesma no foi localizada ou no esta cadastrada no banco de dados, essa mensagem fica ao seu critrio, o cdigo que faz esta funo, a mesma bem simples, apenas estou dizendo se o textBox1 que o cdigo for igual a fazio ento aparece a mensagem, isso porque neste sistema obrigado retornar o cdigo do sistema. If Me.TextBox1 = "" Then MsgBox "Nome no cadastrado", vbInformation, "Banco de dados": Exit Sub
Tela 002 Vou mostar para voc como ira aparecer esta mensagem na tela, lembrando que este deve ficar por em baixo dos demais cdigo:
82
Tela 003 Seguindo a criao do cdigo utilizares o control DO UNTIL esta vai faz er 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 comaar a pesquisar a partir da segunda linha do banco, porque a primeira o cabealho, utilizamos o Do Until mais a variavel do banco rs.EOF para 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 faa esta movimentao 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 atrs do registro.
83
Tela 004 Para terminar temos que colocar mais um cdigo, 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 so os TextBox passando o sinal de = mais os campos o nome dos campos do banco de dados.
84
Tela 005 Esta pronto o cdigo que ira retornar os registros do banco de dados, este bem simples, ira retornar apenas um registro de cada vez, existem situaes que precisamos retornar vrios 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 cdigo para retornar estes 10 nomes ao mesmo tempo, isso irei ensinar nos prximos tutorias, este mesmo cdigo 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 alteraes no mesmo. O importante, e este meu objetivo principal que voc posso utilizar estes cdigos adaptando as suas necessidades do seus sistema, abaixo aparece a tela com uma pesquisa efetuada.
85
Tela 006 Outro fator importante para que os cdigos funcione corretamente ativar a biblioteca chamada Microsof Dao, no editor de VBA, clique em ferramentas, referncias e depois ative a mesma.
Tela 007
Concluso:
Neste tutorial ensinei voc a criar o cdigo para retornar do bando de dados os regitros e tambm como ativar a biblioteca Microsoft Dao, sempre mostrando passo a passo atravs de telas e explicando o funcionamento das funes de forma simples direta e objetiva atravs das telas o que vai facilitar o seu aprendizado. Bons estudos e at a prxima parte.
86