domingo, 25 de dezembro de 2011

11.2. Utilizando a COMBOBOX para manipular planilhas

11.2. Utilizando a COMBOBOX para manipular planilhas

Vamos usar uma COMBOBOX para navegarmos de uma planilha à outra. Crie um formulário igualzinho ao que criamos no item anterior. Desta vez, vamos trabalhar com o evento INITIALIZE do formulário e com o CLICK da COMBOBOX.




Faça o teste. Quando você escolher uma certa planilha na COMBOBOX, ela será ativada na pasta de trabalho.





Para acessar o curso completo Clique aqui

segunda-feira, 19 de dezembro de 2011

11. TRABALHANDO COM OBJETOS

11. TRABALHANDO COM OBJETOS

Vamos começar aprender a trabalhar com os objetos do Excel e usar os conhecimentos que adquirimos até o momento para manipulá-los.

Estes conhecimentos são muito importantes, pois o tempo todo trabalharemos com as COMBOBOX, LISTBOX, CHECBOX, OPTIONBUTTON, COMMANDBUTTON entre outros.

11.1. Criando um LOOP para preencher uma COMBOBOX


As COMBOBOXS são muito utilizadas nos sistemas criados em programação VBA. Precisamos aprender a utilizar bem esta ferramenta, se quisermos criar bons programas.

Muitas vezes, precisamos preencher uma COMBOBOX com dados que estão em uma planilha. Veja o exemplo abaixo.




Crie um formulário com esta carinha.




Dê dois clicks nele, perceba que o evento padrão do formulário será o click, porém, vamos construir nosso algoritmo dentro do INITIALIZE, que é o evento que é ativado assim que o formulário é aberto.



Agora click em F5. Veja que a COMBOBOX foi preenchida com os dados que estão na planilha.


Para acessar o curso completo Clique aqui

domingo, 18 de dezembro de 2011

10.3. Verificando a autenticidade do CPF

10.3. Verificando a autenticidade do CPF

Vamos criar uma função capaz de verificar se um dado número de CPF é valido ou não. Para tanto, precisamos entender a lógica do cálculo. É importante saber, que o raciocínio de calculo do DV(Digito Verificador) do CPF é de domínio público e todos os programadores, de qualquer linguagem o utilizam para validar CPF em seus sistemas.

Entenda a lógica da coisa! Imagine que lhe foi dado número do CPF, 590.465.719-90. Como saber se este número é valido ou não?

Para se calcular o DV, precisamos considerar que o cálculo é feito inicialmente, com os 9 primeiros números do CPF. Para facilitar, veja a tabela abaixo.




Colocamos os números do CPF e identificamos suas posições. Vamos fazer os primeiros cálculos.

Iremos multiplicar os valores de cada dígito do CPF, da esquerda para direita, começando com 10 e progredindo de forma decrescente. Finalmente, achamos o resultado que usaremos para verificar a validade do CPF.



Somamos os valores encontrados e teremos 269.

O CPF é composto por 11 números(9 + 2(DV)). Então, vamos pegar o valor que encontramos e dividir por 11, sendo 269/11 = 24,45, resto 5.

O raciocínio do cálculo é simples. Seguiremos a seguinte regra: se o resto for 0 ou 1, então o DV será igual a 0. Caso contrário, o número do DV será 11 menos o resto encontrado.

No nosso caso, o primeiro número do DV será 11 – 5 = 6.

Vamos agora, encontrar o segundo DV. Para isto, vamos reformular a tabela anterior, acrescentando o número que encontramos.



Perceba, já que encontramos o primeiro dígito, que multiplicamos o 1º número por 11 progredindo decrescentemente como na tabela anterior. Veja que na 10ª posição, colocamos o número que encontramos para o primeiro DV.

Fazendo a soma, teremos 327/11 = 29,72, resto 8. Da mesma forma, 11-8 = 3.

Pronto, o DV deste CPF deveria ser 63 e não 90. O correto é 590.465.719-63

Veja como ficou o código:



Vamos fazer os testes. Digite a fórmula do CPF na célula B1 como mostra a figura. Na célula A1, digite o CPF incorreto, que a função retornará INVALIDO. Nas células de baixo digite o número correto e veja o resultado.




Depois de ver o funcionamento básico das funções, vamos aprender uma pouco mais sobre os objetos do Excel.


Para acessar o curso completo Clique aqui

10.2. Criando uma função para descobrir o valor que originou o ICMS

10.2. Criando uma função para descobrir o valor que originou o ICMS

Algumas pessoas me perguntaram como descobrir o valor principal que originou o ICMS nas notas fiscais. Simples, porém, não se engane. Se multiplicarmos o valor total por 0,18 encontraremos apenas 18% do mesmo. Então, o que fazer? Por exemplo! Se o valor da venda for R$ 300,00 sem ICMS, para acrescentarmos o mesmo, precisamos fazer 300 x 1,18, sendo o valor total de R$ 354,00. Então, se quisermos saber o valor original, é só fazer o processo inverso, ou seja, 354/1,18, retornando o valor de R$ 300,00.

Moral da história! Uma nota com valor final de R$ 354,00, tem o valor do ICMS de R$ 54,00, que é 18% de R$ 300,00 e não R$ 63,72, que é 18% de R$ 354,00. Sabendo isto, você não corre o risco de pagar ou fazer retenções indevidas.

Vamos criar uma função que faça este cálculo automaticamente. Você pode usar a mesma planilha do exemplo anterior, é só mudar o título da célula D1 para VALOR ORIGINAL. Lembre-se, usaremos os mesmos números, porém, estamos falando de uma coisa completamente diferente, estaremos supondo que os valores da coluna 2 já estão cheios e calcularemos o valor inicial na coluna 4. Então vamos lá.


Veja o código. Muito simples! Não há muito que dizer.



Agora é só fazer o teste como no exemplo anterior.


Para acessar o curso completo Clique aqui

sábado, 10 de dezembro de 2011

REVISÃO DO FLUXO DE CAIXA PESSOAL

Pessoal! Fiz uma revisão nos códigos do fluxo de caixa pessoal e percebi que não havia programado o botão EXCLUIR. Desculpe-me pelo vacilo! Agora tá tudo ok!!!

Logo logo, estarei ensinando como utiliza-lo!!! Até lá!!!


 Para baixa o sistema Clique aqui

sexta-feira, 9 de dezembro de 2011

9.7. Excluindo dados da planilha

Pessoal! Cometi um erro no decorrer do nosso curso. Havia prometido ensinar o LOOP para excluir linhas, porém, não postei nada.

Para quem esperou por este capítulo, segue fresquinho!

9.7. Excluindo dados da planilha

Algo muito importante que devemos aprender a fazer é excluir automaticamente as linhas da planilha quando for necessário.

Faça uma planilha como esta. Use números que quiser.



Suponha que você deseja criar um LOOP que percorra a planilha excluindo as linhas cujo número seja menor que 10.

Antes de continuarmos, click com o botão direito na barra superior do Excel e ative a CAIXA DE FERRAMENTAS DE CONTROLE.




Feito isto, vamos inserir um botão na planilha.



Dê dois clicks no botão que acabamos de criar para acessar o seu evento click e digite o código abaixo




Vamos voltar à planilha. Na CAIXA DE FERRAMENTAS DE CONTROLE, click no botão MODO DE DESIGN para sairmos do ambiente de desenvolvimento e podermos acionar a ação do botão quando for clicado.




Agora é só clicar no botão. Verá que todas as linhas que possuírem números menores que 10 serão excluídas.

É isso pessoal! Fizemos muitos exemplos utilizando os diversos tipos de LOOPS. Acredito que você conseguiu compreender a utilização dos códigos e sua aplicação nas mais diversas situações do dia-a-dia. Vamos agora, aprender um pouco sobre a construção de funções no Excel, com o uso do VBA. Até logo!!!

Para acessar o curso completo Clique aqui

quinta-feira, 8 de dezembro de 2011

10. CRIANDO FUNÇÕES PERSONALIZADAS COM VBA

10. CRIANDO FUNÇÕES PERSONALIZADAS COM VBA

Qualquer usuário do Excel sabe o que é uma função. Em todos os cursos básicos oferecidos, aprendemos as funções SOMA(), SOMASE(), CONT.SE() e por ai em diante.

Estas funções são fornecidas prontas pelo aplicativo e só precisamos digitar o operador “=” antes de qualquer uma delas para que elas cumpram o seu papel.

Neste ponto do nosso curso, você já deve ter percebido o poder da programação VBA para criar e desenvolver recursos que vão além dos que o Excel nos oferece. Podemos criar, desde uma função simples que calcule o valor do ICMS a pagar, considerando-se uma determinada , até uma função complexa de verificação do DV de um CPF.

A dinâmica de desenvolvimento das funções é a mesma dos Sub-procedimentos que criamos até aqui. A única diferença, é que nas funções, começamos com Public Function e Finalizamos com End Function.

Não vamos perder muito tempo com as funções, pois o raciocínio de desenvolvimento é o mesmo dos Sub-procedimentos. Iremos criar algumas para exemplificar.


10.1. Criando uma função para calcular ICMS.

Suponha que você tenha um pequena empresa, uma negoção que comercialize bala de goma, pipoca e balão. Até rimou! KKK.

Você registrou suas vendas em uma planilha é quer saber qual seria o valor do ICMS de cada venda. Então vamos lá! Eis a planilha de vendas.





Agora veja como é simples criar a função. Abra o editor do VBA(Alt + F11). No módulo, digite o código abaixo. Se tiver dúvidas sobre Modulo veja o item 4.1. Abrindo o Editor do VBA.



Veja como o código é simples. Agora vamos fazer os testes na planilha. Deixe a célula D2 selecionada e click em inserir função.



Click em FUNÇÕES DEFINIDAS PELO USUÁRIO e depois em ICMS.






O formulário argumentos da função será aberto. Em valor, digite B2 e em Taxa, C2. Finalmente, click em OK.






Perceba que o valor do ICMS será calculado pela função que acabados de criar. Pronto, agora é só copiar a formula para as demais células.






Bem simples! Vamos criar outras funções para você entenda melhor. Até lá!

Para acessar o curso completo Clique aqui

domingo, 4 de dezembro de 2011

9.6. Soma Números

9.6. Soma Números

Vamos criar um código capaz de somar todos os números inseridos em uma INPOUTBOX. Para tanto, usaremos um LOOP. Porém, precisamos criar uma consistência, para impedir que o usuário insira um número negativo, e para isto, usaremos a estrutura condicional.




CÓDIGO PARA COPIAR

Sub SomaNumeros() 'EXCELECIA.BLOG@GMAIL.COM
'Variável que receberá o número que será digitado na INPUTBOX.
Dim Numero As Variant
'Esta variável acumulará a soma dos números digitados.
Dim Soma As Variant

'Mandamos os códigos serem executados sem fazer nenhum teste por enquanto. Simplesmente, Faça.
Do
'Recebe a digitação
Numero = InputBox("Insira um número: ", "SOMA NÚMEROS")
'Se o número digitado for menor do que 0, começamos de novo até que o usuário digite um número
'válido.
If Numero < 0 Then

MsgBox "Digite um número maior que 0(Zero)!"
'se o número digitado for negativo, então zeramos a variável número para receber outro valor
Numero = 0
End If
'Agora é só efetuar a soma.
Soma = Val(Soma) + Val(Numero)
'Usamos um FLAG para finalizar
Loop While Numero <> "FIM"
'Exibimos o resultado da soma
MsgBox "O Resultado da soma: " & Soma

End Sub

Faça o teste. Tecle Alt + F5 para iniciar o sistema. Na INPUTBOX, digite 1, click em enter. Digite 2, click em enter. Digite 27 e click em enter. Para finalizar, digite FIM. O resultado será este.








Para acessar o curso completo Clique aqui