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