
Seja bem-vindo(a)
Telegram da Maestria: t.me/canaldoexcel
Aproveite e siga a gente nas redes sociais:
YouTube: www.youtube.com/maestriatreinamentos
Facebook: www.facebook.com/maestriatreinamentos
Instagram: www.Instagram.com/maestriatreinamentos
Linkedin: www.lilnkedin.com/in/maestriatreinamentos
Bons estudos
Att, Rubens
Alguma dicas iniciais para seu melhor parendizado
Bons estudos
Att, Rubens
Nosso projeto consistirá em 7 telas ao todo.
A intenção é ficar com um aspecto de software, em que não aparecerão as planilhas no fundo
Bons estudos
Att, Rubens
A guia Desenvolvedor é o local a ser explorado durante o curso
Nele estará o VBA, este danadinho que brincaremos por aqui
Bons estudos
Att, Rubens
CTRL + R para aparecer o VBAProject
Vamos começar programando a tela de configurações
Claro, como eu já fiz o projeto eu sei por onde melhor começar
Isso você vai pegando com a prática, apesar que não tem um início que é perfeito
Se você começasse por outra tela chegaríamos a "Roma" da mesma forma
Bons estudos
Att, Rubens
Vamos criar nossa primeira tela!
O VBA adota a língua inglesa para sua programação
Logo tela para o VBA se chama UserForm
Vamos guardando esses nomes que nos ajudam a programar
F4 --> Abre a janela de propriedades
Bons estudos
Att, Rubens
Textbox: ferramenta para o usuário escrever algo. Essa caixa que você está lendo é uma textbox por exemplo
Label: Ferramenta que guarda um texto, número, data...
Bons estudos
Att, Rubens
Vamos começar a personalizar nossas telas
Sempre bom mudar o branco das textbox's
Aos poucos você aprenderá a deixar as telas com sua cara
Bons estudos
Att, Rubens
Mais 2 ferramentas pra "sacola"
Botões (ou button) e Imagens (ou Image)
Fora que aprendemos a executar uma tela pelo VBA
A execução também pode ser feita com o F5 ^^
Bons estudos
Att, Rubens
Bora colocar ícone nas ferramentas?
Lembrem-se: o VBA só aceita os formatos jpeg e bitmap
Use e abuse do Paint nessas horas
Ele aceita também PNG, é verdade, mas aí fica mais complicado
Você quer uma aula extra sobre como colocar imagens em PNG? Comente ^^
Bons estudos
Att, Rubens
Para programar qualquer ferramenta no seu Userform basta dar um duplo clique no objeto
Lembrem-se de verificar a ação onde está sendo programado: Click, Double Click, Activate...
Bons estudos
Att, Rubens
O comando Format é muito usado no mundo do VBA
Ele funciona assim: Format(Expressão, Máscara)
A expressão pode ser uma conta, uma fórmula, uma data
E a máscara é "a cara" que queremos dar para a expressão
Lembrem-se também que diferente do Excel, onde os argumento são separados por ponto-e-vírgula, aqui no VBA os mesmos são separados por vírgula
Bons estudos
Att, Rubens
Como é lindo as Msgbox não?
Queria morar dentro dela
Ela será muito usada no curso, são ótimas para guiar os usuários
Lembrem-se: sempre fazemos softwares para outras pessoas, temos que deixar o software com a melhor experiência possível para o usuário!
Bons estudos
Att, Rubens
SpinButtons são ótimos quando você não quer que o usuário digite numa textbox
Dessa forma evitaremos que o usuário digite letras, números com decimais e por aí vai
O que não faria sentido para esta situação.
Bons estudos
Att, Rubens
Se eu ver que a aula tende a ficar longa eu testo os componentes na aula seguinte
E neste, testei oque foi feito na aula anterior
Bons estudos
Att, Rubens
Colocar dispositivos nos códigos para evitar erros dos usuários é primordial
Como foi no caso, os spin buttons tinham um Range que poderiam variar, então você precisa evitar que o usuário ultrapasse esses limites.
Bons estudos
Att, Rubens
Passar o mouse por cima da ferramenta e acontecer alguma coisa? Gostamos!
Bons estudos
Att, Rubens
Aplicando a ação MouseMove no botão
Bons estudos
Att, Rubens
Como podemos ao clicar numa imagem executar um código? Feito!
Bons estudos
Att, Rubens
Como mexer na planilha enquanto uma tela está sendo executada? Feito!
Bons estudos
Att, Rubens
Como não deixar o usuário sair do programa pelo X da tela
Bons estudos
Att, Rubens
Começaremos a fazer a segunda tela do projeto
Nela o usuário irá cadastrar suas disciplinas e subdisciplinas
Bons estudos
Att, Rubens
Assim como na tela de configurações, faremos o processo de MouseMove nesta tela
Bons estudos
Att, Rubens
Faremos agora o processo de inserção de ícone no botão de cadastro
Bons estudos
Att, Rubens
Agora, faremos o processo de MouseMove do botão de cadastrar
Bons estudos
Att, Rubens
Sem o Do While não daria para automatizar os processos do projeto. Aliás, dar até daria, mas não seria tão dedutivo quanto.
Lembrem-se da estrutura:
Variável = 2
Do While CONDIÇÃO
Variável = Variável + 1
Loop
Traduzindo: Enquanto a condição for verdadeira ele vai executar o código que está entre o Do While e o Loop. A variável sempre deverá ser acrescentada, se não cairemos num looping infinito, tendo que reiniciar o VBA.
Bons estudos
Att, Rubens
Depois que o Do While faz todo o "trabalho sujo" fica fácil.
Só atribuir as ferramentas às células da planilha.
Lembrem-se do papel do Do While: achar a primeira linha em branco!
Bons estudos
Att, Rubens
Sempre que estiver fazendo uma tela, limpe as ferramentas ao final.
Lembrem-se de deixar a experiência do usuário a mais leve possível no software.
Bons estudos
Att, Rubens
Depurando o código cadastrar para um melhor entendimento
Bons estudos
Att, Rubens
Só ajeitando mesmo as ferramentas, para ficarem alinhadas
Bons estudos
Att, Rubens
Vamos começar a estudar como fazemos para alimentar as combobox
Bons estudos
Att, Rubens
Use a ação Activate ou Initialize para alimentar uma combobox. Mas ainda temos dados repetidos
Nas próximas aulas vamos resolver este problema
Bons estudos
Att, Rubens
As funções do Excel podem ser usados no VBA pela inicialização:
Application.WorksheetFunction.Nome_da_função
Lembrando que o VBA utiliza a língua inglesa. Logo você deverá digitar a função nesta.
Link de apoio para traduções das funções do Excel: http://pt.excelfunctions.eu/
Bons estudos
Att, Rubens
Lista em cascata ocorre quando um item de uma lista puxa uma certa lista em outra combobox.
Utilizado no Excel, esse efeito também trouxemos aqui no VBA
Bons estudos
Att, Rubens
Código .Clear
Útil para limpar as combobox
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Qualquer dúvida só escrever um comentário pessoal.
Bons estudos
Att, Rubens
Bem importante não deixar o usuário cadastrar espaços vazios
Futuramente, caso for construir uma dashboard, isso ajudará e muito
Bons estudos
Att, Rubens
Aquele famoso botão de voltar. Iremos utilizá-lo algumas vezes ainda
Bons estudos
Att, Rubens
É importante deixar a planilha bacana para o cadastro dos itens na tela
Bons estudos
Att, Rubens
Hora de colocar as ferramentas dentro da tela
Bons estudos
Att, Rubens
O passo a passo não difere muito entre uma tela e outra
Principalmente no FrontEnd. Já que a tendencia é manter o padrão de uma tela para outra
Até para seu projeto ter seriedade e não ser um "carnaval"
Bons estudos
Att, Rubens
Continuamos de FrontEnd
Bons estudos
Att, Rubens
Chegou a hora da googlada
Bons estudos
Att, Rubens
Assim como nas outras telas, vamos ajeitar o MouseMove da tela de de cadastro de questões
Bons estudos
Att, Rubens
Começaremos a estruturar o código por de trás da tela de cadastro de questões
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
O campo de disciplina não faz sentido ter repetição
Logo iremos corrigir isso no código
Bons estudos
Att, Rubens
Campo de sub disciplina sendo configurado
Código igual ao da tela de cadastro de disciplina
Bons estudos
Att, Rubens
Há algumas situações que não é interessante o usuário editar a combobox
Estamos diante de uma delas
Bons estudos
Att, Rubens
Novamente, importante não deixar os usuários deixarem cadastrar campos em branco
Bons estudos
Att, Rubens
SetFocus: foca o cursor em determinado campo
Importante para a lógica do programa.
O usuário quando apertar TAB por exemplo, não pode ir do primeiro campo para o último campo
E isso conserta-se com o SetFocus
Bons estudos
Att, Rubens
Fator primordial para um bom software
Máscaras onde puder colocar
E a de data é uma delas. Outros exemplos: Telefone, CEP, CNPJ...
Bons estudos
Att, Rubens
Dá erro quando você cadastra uma data?
Isso se deve por conta que o VBA usa a linguagem inglesa
Assim sendo eles invertem o dia com o mês: mm/dd/yyyy
Já aqui no Brasil é: dd/mm/yyyy
Bons estudos
Att, Rubens
Erro consertado!
Nada que um Format não resolva
Bons estudos
Att, Rubens
Validação necessária. Já que é impossível termos questões acertadas maiores que questões feitas
Bons estudos
Att, Rubens
Começando sempre pelo FrontEnd das telas
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Qualquer dúvida só comentar!
Bons estudos
Att, Rubens
RowSource é a propriedade da ListBox que faz puxar os dados da planilha do Excel para ela.
Bons estudos
Att, Rubens
As ListBox sobrecarregam bem a memória da sua máquina
Tem que ficar de olho nisso
Bons estudos
Att, Rubens
O carregamento de toda combobox é bem semelhante
Por isso usufruirmos de código de outra tela
Bons estudos
Att, Rubens
Mesma lógica do vídeo anterior. Vamos aproveitar códigos!
Bons estudos
Att, Rubens
Começaremos agora o processo de criar um filtro dentro da ListBox
Talvez seja a parte mais complicada do curso
Exige treino e atenção
Vamos lá!
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Agora começaremos a filtrar a listbox pelo combobox de sub disciplina
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Começaremos agora a fazer a tela principal do software
Constará um resumo das últimas questões feitas por disciplina dos usuários
Bons estudos
Att, Rubens
Fazendo aquele FrontEnd maroto
Bons estudos
Att, Rubens
Aquela velha e boa googlada
Bons estudos
Att, Rubens
Alinhando as labels da tela principal
Bons estudos
Att, Rubens
Como sempre, o banco de dados é a primeira coisa a ser feita em um software
Lá onde será guardado todos os dados
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Coloque sempre um nome fácil para lembrar na hora da codificação
Bons estudos
Att, Rubens
Bora deixar os botões clicáveis
Bons estudos
Att, Rubens
Esse deu trabalho hein?
Fica como dica sempre "colar" das outras telas
Bons estudos
Att, Rubens
Ufa!
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Como sempre, aquele Format maroto
Bons estudos
Att, Rubens
Sempre bom ajeitar as colunas
Como sempre falo, melhora a experiência do usuário
Bons estudos
Att, Rubens
Qualquer dúvida só falar!
Bons estudos
Att, Rubens
Aaa o Do While...tão lindo
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Sempre bom se resguardar
Mas que fique claro que não existe jeito 100% eficaz de garantir a proteção de seu código
Bons estudos
Att, Rubens
Sempre que for fazer um software é importante não deixar o usuário ter acesso a planilha
Isso faz aumentar sua experiência significativamente.
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Não esqueça de ligar a atualização de tela sempre no final!
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Bons estudos
Att, Rubens
Uhul
Bons estudos
Att, Rubens
Baixe essa apostila de VBA, gratuita
E também o software finalizado
Lembre-se de seguir a Maestria Treinamentos nas redes sociais ;)
Telegram: t.me/canaldoexcel
Bons estudos
Att, Rubens
Curso 100% prático sobre a linguagem VBA
Não ensinaremos como usar as ferramentas e objetos separadamente
Desde o primeiro vídeo será mão na massa
Será desenvolvido um software de estudos, que inclusive você após fazê-lo poderá vendê-lo para outras pessoas e começará a criar seus próprios softwares
Explicaremos como deixar um banco de dados no Excel no jeito para receber os dados do softwares, como fazer um FrontEnd adequado, ou seja, a parte da frente dos softwares para uma melhor experiência do usuário, e claro toda a parte do BackEnd bem explicada para você entender.
Você não precisa ter formação em programação (eu não tenho!), não precisa já saber Excel ou VBA básico.
Este curso só exige força de vontade! Senta na cadeira e estudar estudar e estudar. Na prática você vai conseguir chegar a um bom nível de VBA
Espero seu feedback do curso também, é assim que irei melhorando meus próximos cursos e até mesmo este atual