domingo, 8 de maio de 2011

5. APRENDENDO A TRABALHAR COM FORMULÁRIOS - APRENDA A CONSTRUIR UMA CALCULADORA EM VBA

Olá Pessoal! Esta é a 5ª parte do meu curso de programação VBA Excel. Como prometi, ensino passo-a-passo a fazer uma calculadora.


5. APRENDENDO A TRABALHAR COM FORMULÁRIOS

Os formulários são muito utilizados na programação VBA. De uma forma simples é possível criar interfaces que facilitem a interação do usuário com as planilhas, reduzindo o tempo requerido para a realização de algumas tarefas. Vejamos como acessar formulários através do editor do VBA.

Vamos aproveitar este capítulo para criarmos uma calculadora em programação VBA e assim, consolidarmos dos conceitos aprendidos
5.1. Criando uma Calculadora no Excel VBA

Precisaremos inicialmente, após abrir uma planilha do Excel, acessar o editor do VBA. Simples, clique em Alt + F11 e Vualá(No português mesmo pra faciliar!kkk).

Após abrir o editor do VBA, faça como a figura abaixo para abrir o formulário. Não se esqueça de abrir a caixa de ferramentas que vamos utilizar para criar nossa calculadora.

5.1.1. Personalizando o formulário

Inicialmente, vamos fazer algumas alterações no formulário para personalizá-lo. Vamos dar um nome a ele e mudar a descrição de sua barra de identificação. Para tanto, utilizaremos a caixa de propriedades para deixar o formulário a nossa cara. (Se depender de mim vai ficar lindo, não sei quanto a você!kkk).

Veja que depois de alterarmos a propriedade name, o nome do formulário vai mudar para Calculadora. Da mesma forma, quando alterarmos a propriedade Caption, a descrição do formulário mudará.

Além disso, como você pode ver na figura, inserimos no formulário uma caixa de texto e um botão.


5.1.2. Montando a Interface

Agora que você já sabe como inserir caixas de texto e botões, vamos criar um formulário como o abaixo. É só inserir o número de botões correspondentes e alterar a propriedade Caption para inserir os números da calculadora. Qualquer dúvida sobre a posição dos botões você pode baixar o modelo, abrir o editor do VBA e verificar.

5.1.3. Programando a Calculadora

Pois bem, chegamos ao momento que todos esperavam. É hora de programar a nossa calculadora. Como já dito no começo do curso, explicarei os códigos no próprio corpo do projeto para facilitar a compreensão. Você se surpreenderá com a simplicidade deste projeto, que lhe dará uma excelente base para iniciar e compreender outros programas.

Para iniciar, dê 2 cliques no corpo do formulário para abrirmos a área onde declararemos as variáveis que iremos utilizar. Na parte de cima, antes de qualquer linha de código digite como abaixo as variáveis valor e operação.

A variável valor irá armazenar o valor que será digitado na caixa de texto e operação determinará qual operação aritmética será realizada(Adição, Subtração, Multiplicação ou Divisão).





Será necessário agora, programar a ação dos botões. Para isto, dê dois cliques no botão que deseja programar. Perceba que trabalharemos no evento clique de cada botão.

Exemplo: Private Sub CommandButton1_Click()

Isto significa que as ações ocorrerão somente quando cada botão for clicado.
Veja dos códigos completos com os devidos comentários.
‘ Declaramos as variáveis
Public valor As Single
Public operaçao As String

‘ Quando a calculadora estiver em funcionamento e clicarmos no botão 1 a Caixa de Texto(TextBox1) receberá o valor 1. Se clicarmos novamente, ficará 11 e assim sucessivamente.

Private Sub CommandButton1_Click()
TextBox1 = TextBox1 + "1"
End Sub

‘O mesmo princípio pode ser aplicado a todos os botões numéricos da calculadora.

Private Sub CommandButton2_Click()
TextBox1 = TextBox1 + "2"
End Sub

Private Sub CommandButton3_Click()
TextBox1 = TextBox1 + "3"
End Sub

Private Sub CommandButton4_Click()
TextBox1 = TextBox1 + "4"
End Sub

Private Sub CommandButton5_Click()
TextBox1 = TextBox1 + "5"
End Sub

Private Sub CommandButton6_Click()
TextBox1 = TextBox1 + "6"
End Sub

Private Sub CommandButton7_Click()
TextBox1 = TextBox1 + "7"
End Sub

Private Sub CommandButton8_Click()
TextBox1 = TextBox1 + "8"
End Sub

Private Sub CommandButton9_Click()
TextBox1 = TextBox1 + "9"
End Sub

Private Sub CommandButton10_Click()
TextBox1 = TextBox1 + "0"
End Sub


‘AGORA, VAMOS COMEÇAR A PROGRAMAR OS BOTÕES QUE REALIZARÃO AS OPERAÇÕES
Private Sub CommandButton11_Click()
‘O 1º fará a soma. Veja que a variável “Valor” armazenará o valor digitado na caixa de texto. Entenda que na caixa de texto podemos digitar qualquer coisa, letras, números e caracteres. Por isto, precisamos pegar o valor que foi digitado e convertemos em número, daí  a expressão Val(TextBox1).
valor = Val(TextBox1)
Percebe que após a variável “valor” receber o número, precisamos limpar a caixa de texto para receber o próximo número que será digitado.
TextBox1 = ""
Como queremos efetuar uma soma, a variável “operação” receberá esta expressão.
operaçao = "soma"
End Sub

OS COMMANDBUTTONS 12, 13 E 14 UTILIZARÃO OS MESMOS PRINCÍPIOS.

Private Sub CommandButton12_Click()
valor = Val(TextBox1)
TextBox1 = ""
operaçao = "subtraçao"
End Sub

Private Sub CommandButton13_Click()
valor = Val(TextBox1)
TextBox1 = ""
operaçao = "divisao"
End Sub

Private Sub CommandButton14_Click()
valor = Val(TextBox1)
TextBox1 = ""
operaçao = "multiplicaçao"
End Sub

‘PARA ESTE PROJETO, O BOTÃO “=” TALVEZ SEJA O MAIS COMPLEXO. PORÉM NÃO CHEGANDO A SER UM DESAFIO PARA VOCÊ QUE ESTÁ ACOMPANHANDO O CURSO DESDE O INÍCIO.

Aqui, vamos utilizar o operador CASE. Em português simples, significa dizer que caso se clique no botão X, faça isto. Caso clique no botão Y faça aquilo.

Private Sub CommandButton15_Click()
‘Quando o botão “=” for clicado, significa que você já clicou em um dos operadores aritméticos antes(+, -, /, x), determinando qual operação será realizada.

‘Usamos Select Case para iniciar o processo
Select Case operaçao
‘Caso a operação seja soma(+)
Case "soma"
‘Vamos pegar o valor que foi armazenado na variável “valor” e soma-lo com o valor que ficou na tela por último.
valor = Val(TextBox1) + valor ‘(entenda que este valor foi armazenado quando você clicou em “+”. Depois disto a tela foi limpada, lembra! Logo você digitou mais um valor que será Val(TextBox1). Agora é só somar estes dois e a variável “valor” será renovada, recebendo o valor da soma. Simples!!!!!Não?


‘OS PROXIMOS SEGUEM O MESMO RACIOCÍNIO
Case "subtraçao"
valor = valor - Val(TextBox1)
Case "divisao"
valor = valor / Val(TextBox1)
Case "multiplicaçao"
valor = valor * Val(TextBox1)

‘Usamos End Select para fechar o processo.
End Select

‘Depois que o operador for identificado e a operação for realizado é só exibir o resultado na tela e sair pra galera!!!!!
TextBox1 = valor

End Sub

Private Sub CommandButton16_Click()
‘Este botão é o “CE”, serve apenas para limpar a tela. Ou seja, queremos que o valor da caixa de texto seja nada(“”)
TextBox1 = ""
End Sub

Private Sub CommandButton17_Click()
‘Este botão apenas fecha a calculadora
Unload Calculadora
End Sub

Para acessar o curso completo Clique aqui

Se quiser baixar a calculadora Clique aqui



quarta-feira, 4 de maio de 2011

CALCULADORA EM VBA

Galera, Estou postando uma calculadora desenvolvida em VBA. Logo, estarei explicando passo-a-passo como construí-la. Até lá. Clique aqui para baixar

domingo, 1 de maio de 2011

4. CONHECENDO O EDITOR DO VBA

4. CONHECENDO O EDITOR DO VBA.

Resolvi abordar este assunto agora, pois venho percebendo que a maioria dos iniciantes em programação VBA, que estudam pela internet, se sentem desanimados já nos primeiros passos por não saberem ao menos onde os códigos devem ser escritos, não podendo assim, ver os códigos em ação. Para resolvermos tal problema, mostrarei como acessar o EDITOR DO VBA, assim como suas funcionalidades básicas. Assim, quando partimos para os exemplos práticos, você terá condições de ver os resultados, eliminando suas frustações. "Viu como sou gente boa!".

Todos os exemplos serão confeccionados no Excel 2003. Neste momento do nosso curso, não aprofundaremos os nossos conhecimentos no editor do VBA. Aprenderemos apenas a acessar o módulo onde serão digitados os códigos para teste, deixando a exploração do ambiente de desenvolvimento do VBA para o futuro, dentro de cada tópico que estudaremos.

4.1. Abrindo o Editor do VBA

Crie uma planilha do Excel e a nomeie como o exemplo abaixo. Utilizaremos essa planilha em nossos exemplos de código VBA.

Para abrir o editor do VBA, siga os seguintes passos: Clique no Menu Ferramentas; Macro; Editor do Visual Basic ou simplismente Alt+F11, como mostra a figura abaixo:

 


Com o editor do Visual Basic aberto, clique no ícone que abrirá o módulo, conforme a figura abaixo.



Agora podemos desenvolver nossos primeiros códigos e testa-los.

4.1. Exemplos

Para melhor compreensão da teoria apresentada até aqui, irei utilizar os conceitos apresentados nos item 3.2.1 e 3.2.2, sobre variáveis e constantes respectivamente, em forma de exemplos.

1º EXEMPLO

Nosso primeiro exemplo, consiste na criação de um algorítimo que resultará na multiplicação de dois números, escrevendo o seu resultado. Para facilitar a compreensão, comentarei o código em seu próprio corpo. Perceba que os escritos em verde, não são lidos pelo editor, sendo considerados apenas comentários. Caso queira fazer seus próprios comentários no código é só escreve-los depois do apóstrofo.

OBS: Além do código feito no próprio editor do VBA, colocarei abaixo o código para que você possa copiar. Que moleza!!!

Neste 1º exemplo, farei também o fluxograma para que você entenda a sua aplicação
FLUXOGRAMA
         
















CÓDIGO EM VBA














CÓDIGO PARA COPIAR

Sub Multiplicação()
'Declaro as variáveis que receberão os números a serem multiplicados(N1 e N2)
'e a que receberá o resultado(M).
Dim N1, N2, M As Integer
'Abro uma caixa de entrada para receber o 1º número
N1 = InputBox("Digite o primeiro número", "MULTIPLICAÇÃO")
'Abro uma caixa de entrada para receber o 2º número
N2 = InputBox("Digite o segundo número", "MULTIPLICAÇÃO")
'Uso o operador aritmético(*) para fazer a multiplicação
M = N1 * N2
'Imprimo o resultado na tela através de uma caixa de mensagem(msgbox)
MsgBox "Resultado da multiplicação: " & M
End Sub

2º EXEMPLO

Neste exemplo, criaremos um algorítimo que calcula o desconto de uma compra feita à vista, imprimindo na tela o total dos descontos e o total à pagar.



CÓDIGO PARA COPIAR


Sub Desconto_Vendas()

'Declaro a constante, que caracterizara o desconto, que no caso, será de
'5 por cento.
Const tax_Desc As Double = 0.05
'Declaro a variável que receberá o valor do produto
Dim Valor_Prod As Double
'Declaro a variável que recebera o valor do desconto
Dim Valor_Desc As Double
'Declaro a variável que receberá o total à pagar
Dim Total_Pg As Double
'Para começar, criaremos uma caixa de entrada para receber o valor do produto
Valor_Prod = InputBox("Digite o valor do produto: ", "CALCULA DESCONTO")
'Calculo o valor do desconto(valor do produto x a taxa de desconto)
Valor_Desc = Valor_Prod * tax_Desc
'Finalmente, calculo o total à pagar
Total_Pg = Valor_Prod * (1 - tax_Desc)
'Agora é só imprimir os resultados usando a caixa de mensagem
MsgBox "Valor do produto: " & Valor_Prod & Chr(13) _
& "Valor do desconto: " & Valor_Desc & Chr(13) _
& "Total à pagar: " & Total_Pg

'VOCABULÁRIO
'Ao invés de ficar dando longas explicações sobre caracteres e operadores que
'vão aparecendo no código, procurarei explica-los no próprio código.
'1.Inputbox: É uma caixa de entrada de dados
'2.&: Concatena as informações
'3."": Todo texto(string) no código deve vir entre aspas.
'4.chr(13): É o mesmo que Enter, porém feito via programação

End Sub

Para ver o curso completo Clique aqui

terça-feira, 12 de abril de 2011

3. LOGICA DE PROGRAMAÇÃO EM VBA

3. LÓGICA DE PROGRAMAÇÃO EM VBA

Para desenvolver qualquer sistema em VBA ou em qualquer outra linguagem programação, se faz necessário a compreensão do que é a lógica de programação. O conhecimento adquirido sobre algorítimos será extremamente relevante neste momento.

3.1. Fluxograma e seus principais símbolos


Os Fluxogramas são amplamente utilizados nos estudos de algorítmos, assim como a lógica de programação. Basicamente, o fluxograma consiste em analisar o enunciado de um problema qualquer, descrevendo sua possível solução através de símbolos. A razão de sua utilização, se deve à facilidade de compreenção dos simbolos. Veja a descrição dos principais símbolos abaixo:

 












3.2. Operadores Aritméticos e Relacionais

3.2.1. Operadores Aritméticos

Ao desenvolvermos algoritmos, precisamos trabalhar com expressões matemáticas para a resolver problemas. Chamamos de  operadores aritméticos, o conjunto de símbolos que representa as operações básicas da matemática, conforme tabela a seguir:
 








3.2.2. Operadores Relacionais


Os operadores relacionais são tão importantes, quanto os operadores aritméticos. Utilizamos esses operadores quando queremos fazer comparações entre valores. Os operadores relacionais são:









3.2. Declaração de Variáveis e Constantes.

As variáveis e constantes são utilizadas para armazenar os dados que serão processados em um programa. São extremamente importantes e necessárias ao bom funcionamento dos sistemas desenvolvidos em VBA. Agora, você deve estar se perguntando, qual a diferença entre elas? Pois bem, eis a explicação!


 

3.2.1. Variável

As variáveis armazenam dados, que podem ser números e que sofrerão modificações durante a execução do algorítimo. Assim, todo dado que tem a possibilidade de ser alterado, sofrendo variações no decorrer do tempo, deverá ser tratado como uma variável do problema, e portanto deverá ser definido como tal no algoritmo a ser desenvolvido.

EXEMPLO

Para melhorar a compreensão, imagine que queira desenvolver um pequeno sistema que faça a multiplicação entre dois números. Logo precisariamos de 3 variáveis, sendo uma para receber o 1º número, uma para o 2º e finalmente a que receberá o resultado. Assim, sempre que os números das variáveis 1 e 2 mudarem, o resultado da 3º terceira variável será diferente.

VARIÁVEIS                        1    x    2     =      3 (RESULTADO DA MULTIPLICAÇÃO)
NÚM. DIGITADOS             2    x    3     =      6 (O resultado da multiplicação é 6)
NÚM. DIGITADOS               6    x    4     =    24 (O resultado da multiplicação é 24)

Perceba que o valor que será guardado na 3º varíável será diferente em cada situação.

3.2.1.1 . Tipos de variáveis

O tipo de variável, relaciona-se  à informação que se pretende armazenar nela. Abaixo, segue uma lista com as mais utilizadas e sua aplicação.


Integer – 2 bytes - permite armazenar  números inteiros entre -32.768 e 32767 

Double – 8 bytes – permite armazenar um real desde -1.79769313486232E308 até -4.94065645841247E-324 para valores negativos, e desde 1.79769313486232E308 até 4.94065645841247E-324 para valores positivos.

Boolean – 2 bytes – Permite armazenar valores Boolenaos – True ou False

Variant – 16 bytes - permite armazenar qualquer tipo de dados
Byte – 1 Byte – permite armazenar números sem sinal entre 0 e 255
Long – 4 bytes – permite armazenar números inteiros entre -2 147 483 648 e 2 147 483 648
Object – 4 bytes – utilizado para fazer referência a um objecto do Excel


3.2.2. Constante
Date – 8 Bytes – permite armazenar datas
Single – 4 bytes – permite armazenar um real desde -3.402823E38 até -1.4011298E-45, para valores negativos e desde 3.402823E38 até 1.4011298E-45, para valores positivos

Currency  - 8 bytes – permite armazenar moeda

String – 1 byte por caractere – permite armazenar conjuntos de caracteres

Como o próprio nome diz, as constantes são valores que não se alteram durante a execução de uma rotina, ou seja, quando um dado não tem nenhuma possibilidade de variar com o decorrer da execução do algorítmo. São declaradas da mesma forma que as variáveis, a única diferença e que a atribuição de valor deve ser feita na mesma instrução da declaração e apenas uma única vez.

EXEMPLO

Imagine que você precisa criar um pequeno sistema para calcular o valor do desconto que será dado a um cliente por um compra à vista em sua pequena loja. Você decidiu que toda a compra à vista terá um desconto de 5%. Logo precisaremos de uma variável, pois o valor da compra pode mudar, dependendo do cliente e de uma constante, pois o valor do desconto será o mesmo. Então vamos a boa e velha matemática.

VARIÁVEL(Valor da compra)       CONSTANTE(Desconto)       RESULTADO(Valor do desconto)
                100                      x                       0,05                     =                            5           
                300                      x                       0,05                     =                          15           



Para ver o curso completo Clique aqui

segunda-feira, 11 de abril de 2011

2. ALGORÍTIMOS

2. ALGORÍTIMOS


A palavra "ALGORÍTIMO" costuma amedrontar algumas pessoas. Algumas pessoas tiveram um infeliz contato com o significados desta palavra. Não se preocupe, são apenas temores infundados.

Na realidade, os algorítimos não passam de uma receita(como de bolo). São apenas uma sequencia lógica e detalhada de acões, que sendo executadas corretamente realizarão a tarefa desejada.

Diante do exposta, fica fácil entender que os algorítimos fazem parte de nossa vida cotidiana. Imagine a seguinte situação hipotética:

Você está deitado em sua cama numa tarde de sábado, vendo aquele filminho que locou pela manhã após o futebol cansativo. De repente, lembra-se dos tempos do cineminha com sua ex-namorada que te deu o fora. Apesar da tristeza da perda, você se lembrou daquela deliciosa pipoquinha com sal que sempre acompanhava as sessões(ou seria seções?!), não interessa, sei que entendeu; então resolve fazer a pipoca, porém, para isso, precisa seguir alguns passos. Eis o algoritmo.

2.1. Algorítimo para fazer pipocas.

2.1.1. Chega de preguiça, levante-se da cama(se for preciso, faça um alongamento) e não se esqueça de pausar o filme.
2.1.2. Calçe o chinelo e dirija-se à cozinha.
2.1.3. No armário, pegue a pipoqueira(se não tiver, se vira meu!)
2.1.4. Vá até a dispensa e pegue o milho de pipoca(se não houver, continue a leitura, caso contrário, pule para o item 2.1.5.)
           2.1.4.1. Que displicente(tá me dando trabalho!). Volte ao quarto, pegue as chaves, vá para a garagem e pegue o carro.
            2.1.4.2. Dirija até o supermercado, compre a pipoca e volte.
2.1.5. Agora coloque a pipoca na pipoqueira, um pouco de óleo e sal.
2.1.6. Aguarde até ficar pronto, tire na panela, espere esfriar
2.1.7. E aí é só comer.

Obviamente, todo o processo acima, poderia ser menor, ou até maior dependendo da situação. O importante, é entender que para se alcançar o objetivo, foi preciso seguir uma sequência lógica de ações. Isto é algorítimo.

Para ver o curso completo Clique aqui

domingo, 10 de abril de 2011

1. CURSO DE PROGRAMAÇÃO VBA (INTRODUÇÃO AOS ALGORÍTIMOS)

1. INTRODUÇÃO


Com frequência, somos confrontados em nosso dia-a-dia por obstáculos, que nos parecem intransponíveis. Apesar de ser um recurso extremamente útil e versátil, o excel não consegue resolver sozinho todas as tarefas que os ambientes empresariais exigem. Isto porque, mesmo com tantos recursos, tais como fórmulas, calculos automáticos, tabelas dinâmicas, etc, existem tarefas repetitivas que demandam muito tempo e procrastinam a vida de seus executores.


Atualmente, a programação VBA tem se tornado cada vez mais conhecida e aprendida por usuários experientes do excel, que precisam criar soluções inteligentes e rapidas para solucionar problemas rotineiros. No mesmo sentido, muitos Microempresários, estão lançando mão dessa poderosa ferramenta para gerenciar suas atividades com maior eficiência, buscando assim, vantagem competitiva no mercado em que atuam.

Com o objetivo de auxiliar os interessados em compreender essa linguagem de programação, descreveremos os conceitos mais importantes e necessários ao seu aprendizado, desde os conceitos básicos, até aspectos avançados.

Para ver o curso completo Clique aqui

quarta-feira, 19 de janeiro de 2011

Excel e VBA

Com certeza, uma das ferramentas mais utilizadas nos ambientes empresariais e por usuários domésticos é o famoso editor de planilhas da Microsoft. Sua utilização se deve à eficiência, e a elevada gama de recursos disponíveis para realização de tarefas cotidianas. Atualmente, a compreensão e correta utilização desta ferramenta, constitui-se em fator de ponderação de extrema relevancia à profissionais e micro-empresários que buscam vantagem competitiva no mercado globalizado.


Poucas pessoas conhecem o poder da programação VBA(Visual Basic for Application) aplicada à automatização de taferas repetitivas e rotineiras. Com esta explendida ferramenta, pode-se criar desde MACROS simples à sistemas complexos, capazes de realizar tarefas difíceis e que demandam muito tempo.





Este blog tem por objetivo, a exploração dos aspectos práticos da utilização do Excel e VBA(Visual Basic for Application) e sua aplicação em finanças, custos e administração em geral.