Conhecendo a linguagem Visual Basic for Applications (VBA)
O que é o VBA
O que são Macros
Breve Historia
VBA vs VB vs Office Script vs SQL vs PowerQuery
Guia Desenvolvedor
Conhecendo o Gravador de Macro
Formatos de arquivo do Excel
Configurações de confiabilidade de Macros
Referencia Relativa e Absoluta de Macro
Visual Basic Editor (VBE)
Depurando código no VBE
Modificando uma Macro
Personalizando o VBE
Avaliando a Gravação de uma Macro na Prática
Fundamentos da linguagem VBA
Introdução ao módulo
Procedimentos Sub e Function
Declarando variáveis
Tipos de variáveis
Arrays
Instruções de decisão lógica (Tomada de decisões)
Instrução If... Then
Instrução If... Then... Else
Instrução If... Then...ElseIf... Else
Instrução If... Then Aninhado
Instrução If... Then com Operadores Lógicos (And & Or)
Instrução de decisão lógica Select Case... End Select
Estruturas de Loop
Loop - For... Next
Loop - For... Each... Next
Loop - Do While... Loop vs Do... Loop While
Loop - Do Until... Loop vs Do... Loop Until
Loop - Usando Loops com decisões lógicas
Função especial - Message Box
Função especial - Input Box
Função especial - Application.InputBox
Tratamento de Erros
Trabalhando com Datas
Objetos, Coleções, Métodos e Propriedades
O Objeto Application (Excel)
O Modelo de Objeto do Excel
Propriedades e métodos do Objeto Application
Propriedades que controlam a Interface do Excel
O Método FileDialog - Os tipos de FileDIalog
O Método FileDialog - msoFileDialogFilePicker (Capturando e importando arquivos do computador)
O Método FileDialog - msoFileDialogFolderPicker (Capturar Pastas do Computador)
O Método FileDialog - msoFileDialogOpen (Abrindo arquivos externos)
O Método FileDialog - msoFileDialogSaveAs (Salvar arquivos para Computador)
Método OnKey - Criando e desativando atalhos
O Método OnTime - Agendando a execução de procedimentos
O Método SendKeys - Simulando o pressionamento de teclas
A Propriedade WorksheetFunction
A Propriedade Application.Visible
O Método Application.Quit
O Método Application.Volatile
O Objeto Workbook (Pasta de trabalho)
Introdução ao Módulo
O Método Workbooks.Add - Criando Pastas de Trabalho
O Método Workbooks.Add - Criando nova Pasta de Trabalho à partir de um Modelo
O Método Workbooks.Add - Criando e Salvando Workbook dentro de um Repositório (Caminho da Pasta)
O Método Workbooks.Add - Criando nova Pasta com várias Planilhas
O Método Workbooks.Add - Criando uma Pasta de Trabalho e Alimentando com Informações
O Método Workbook.Save - Salvando Pastas de Trabalho
O Método Workbook.SaveAs - Salvando Pastas de Trabalho (Senha, Backup, Compartilhada, Outros Formatos)
O Evento Workbook_Open - Executando ações sempre que o Workbook é aberto
Os Eventos BeforeSave (Antes de Salvar), AfterSave (Após Salvar) e BeforeClose (Antes de Fechar)
O Objeto Worksheet (Planilha)
Introdução ao Módulo
O Método Worksheets.Add - Criando novas planilhas
Os Métodos Move e Copy - Copiando e movendo Planilhas
O Método Worksheets.Delete - Deletando Planilhas
O Método Worksheets.PrintOut- Imprimir dados de Planilhas
O Método Worksheet.Protect- Proteção de Planilhas
Agrupando Planilhas
Ocultando Planilhas
A Propriedade Worksheet.Shapes - Caixa de texto
A Propriedade Worksheet.Shapes - Imagens
O Objeto Range (Listas, intervalos, tabelas, células...)
Introdução ao Módulo
Trabalhando com Ranges
A Propriedades Cells
A Propriedade Offset - Exemplo Prático
O Método Range.Find - Realizando buscas
O Método Copy + Propriedade CurrentRegion
Como Excluir linhas vazias
Descobrindo o valor da última célula não vazia em linhas ou colunas
Usando Arrays para Transportar dados - Com critérios
Como limpar células - Conteúdo, formatação, comentários, anotações, hiperlinks...
Intervalos vs Tabelas - Faz diferença para o VBA?
Como redimensionar uma Range usando a Propriedade Range.Resize
Como juntar intervalos de diferentes Planilhas para dentro de uma única Planilha
Como exportar para PDF
O Objeto Chart (Gráficos)
Introdução ao Módulo - O Objeto Chart (Gráfico)
Como criar gráficos usando VBA
Gráfico incorporado - Como criar usando o Método Shapes.AddChart2
Gráfico incorporado - Como definir a fonte de dados do Gráfico - Método Chart.SetSourceData
Gráfico incorporado - Como modificar os Elementos do Gráfico
Gráfico incorporado - Como personalizar um gráfico
Gráfico incorporado - Como atribuir Rótulos usando o Método Chart.SeriesCollection
Gráfico incorporado - Como criar vários gráficos com Loop
Gráfico incorporado - Como Exportar Gráficos
Gráfico incorporado - Como exportar todos os gráficos de uma Planilha
O Objeto UserForm (Formulários e Controles)
Introdução ao uso de formulários
Propriedades, métodos e eventos de formulários
Formulário sem janela restrita
Label (Rótulo)
TextBox (Caixa de texto)
ComboBox (Caixa de combinação)
Frame (Quadro) e OptionButton (Botão de opções)
CheckBox (Caixa de checagem)
Image (Imagem)
MultiPage (Multi-página) e TabStrip
SpinButton (Botão de rotação)
ScrollBar (Barra de rolagem)
ToggleButton (Botão de ativação)
RefEdit
ListBox - Adicionando dados usando a propriedade RowSource
ListBox - Adicionando dados usando o método AddItem
ListBox - Adicionando dados usando a propriedade List e as funções Array e Split
ListBox - Adicionando dados com o Objeto Collection (Removendo duplicatas)
ListBox - Como selecionar vários itens e descarregar em Planilhas
ListBox - Transferindo dados entre Listbox
ListBox - Como mover os itens dentro de uma ListBox
ListBox - Trabalhando com várias colunas
ListBox - Criando ListBox com várias colunas usando Loops
ListBox - Criando ListBox com várias colunas usando Arrays
ListBox - Como usar uma TextBox para Filtrar dados do ListBox usando Arrays
ListBox - Como alternar entre diferentes Listas usando Select Case
ListBox - Carregando ListBox com SQL
ListBox - Criando cabeçalho personalizado
ListBox - Filtrando dados com SQL
ListBox - Filtrando entre Datas com SQL
ListBox - Filtrando entre Datas com SQL com condição de Alternar entre Campos (Select Case)
Runtime - Como criar um formulário em tempo de execução
Runtime - Como criar controles em tempo de execução
Windows API (Uso e aplicação)
Introdução
Entendendo os arquivos de biblioteca da API do Windows
Como declarar uma função da API do Windows (Sintaxe)
Passando argumentos para funções de API
Usando constantes com funções de API do Windows
Problemas de compatibilidades 32 bits x 64 bits
Acessando a documentação da API do Windows
Funções API Windows para Personalizar o UserForm
Procedimento para Redimensionar e Autoajustar as dimensões e posições de todos os Controles do Formulário à medida que é Maximizado ou Minimizado
Com usar a Função Shell (Abrir Programas)
API Windows para Identificar o Usuário logado no Windows
Usando a função de API do Windows ShellExecute
API Windows para baixar arquivos da internet
Trabalhando com Dados e Arquivos Externos
Introdução ao Módulo
A Biblioteca Activex Data Objects (ADO)
Conhecendo os Comandos SQL
Excel - Usando ADO no Workbook ativo - Buscando informações e descarregando em Planilhas com SELECT FROM (SQL)
Excel - Usando ADO no Workbook ativo - Buscando informações e descarregando em Planilhas com SELECT FROM (SQL) - Uso de critérios
Excel - Como importar dados de Workbooks fechados
Excel - Busca e Importação de dados entre Datas (Filtragem avançada)
Excel - Busca e Filtragem de dados contendo partes de um texto com SQL
Excel - Como enviar dados para uma Planilha de um Workbook fechado
Excel - Localizar e Alterar informações de Pastas fechadas
Access - Como importar tabelas do Access para o Excel
Access - Como classificar uma Tabela do Access antes de importar para o Excel
Access - Como realizar Somas e Contagens de campos
Access - Como remover duplicatas de campos durante a consulta
CSV/TXT - Trabalhando com arquivos de texto
CSV/TXT - Importando para uma Planilha do Excel
CSV/TXT - Exportando dados de Planilhas
CSV/TXT - Salvando novos dados CSV já existente
CSV/TXT - Exportar Tabelas de um Banco de dados para CSV ou TXT
XML - Introdução
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 1 (Dados dos produtos)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 2 (FileDialog)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 3 (Informações da nota)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 4 (Dados do Emitente e Destinatário)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 5 (Dados Duplicatas)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 6 (Totais e Impostos)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 7 (Dados Transporte)
XML - Como importar XML de Nota Fiscal Eletrônica (Nfe) - Parte 8 (Gerando Código de Barras da Chave de Acesso)
XML - Com Importar da Web com DOM
XML - Com Importar da Web com as Funções FilterXml e WebService
XML - Como Exportar registros do Excel para XML via ADO
XML - Como Exportar registros do Excel para XML com DOM e ADO
JSON - Consulta de CNPJ (Como trazer dados de WebServices e API's para o Excel)
JSON - Como incorporar a Busca de dados de CNPJ ao seu Formulário
JSON - Como Gerar um JSON a partir de uma Tabela de dados de Planilhas
Pastas e arquivos - Como saber se um Arquivo ou uma Pasta existem em um repositório
Arquivos e Pastas - Como listar todos os arquivos em um diretório
FileSystemObject - Verificando se um Arquivo ou Pasta existem em um Diretório
FileSystemObject - Como copiar um arquivo de uma pasta para outra
FileSystemObject - Como deletar Pastas e arquivos via VBA
Ribbon, Menus, Comandos e Backstage - Programação e Personalização
Introdução ao Módulo
Ribbon - Configurações da Ribbon nativa do Excel (Criação de Guias, Grupos e adição de Controles)
Ferramentas de Edição e Personalização
Ribbon - Como criar ícones personalizados para Ribbon
Ribbon - Como descobrir nomes de ícones nativos do Excel
Ribbon - Como funciona a Personalização da Ribbon
Ribbon - Ocultando e modificando guias e grupos nativas do Excel
Ribbon - Ocultando Guias Contextuais
Ribbon - Criando guias do zero e usando Grupos nativos dentro dessas Guias
Ribbon - Controle Button (Botão)
Ribbon - Menus e sub-menus com Botões
Ribbon - Controle Checkbox (Caixa de seleção)
Ribbon - Controle ComboBox (Caixa de Combinação)
Comandos - Introdução aos comandos do Excel
Comandos - Como Desabilitar Comandos do Excel
Comandos - Como atribuir nossas próprias ações aos comandos do Excel
Menus Contextuais - Introdução
Menus Contextuais - Como ocultar controles de um Menu Contextual
Menus Contextuais - Como inserir Botões dentro de um Menu Contextual
Menus Contextuais - Como criar Menus dentro de um Menu Contextual
Menus Contextuais - Dicas para descobrir o nome dos controles que deseja ocultar
CommandBars - Introdução
CommandBars - Acessando controles da faixa de opções
CommandBars - Como criar um Menu Customizando em uma Suplemento (ToolBar)
CommandBars - Manipulando os Menus Contextuais do Excel (Adicionar, ocultar, desabiltar...)
CommandBars - Criando um Menu Popup Contextual
CommandBars - Criando um Menu Popup Contextual com Sub-Menus
CommandBars - Usando Menu Popup Contextual dentro de um Formulário
Backstage - Como ocultar as Guias e Botões do Backstage
Backstage - Como criar Guias e Tarefas dentro do Backstage
Módulo de Classe
Introdução ao uso de Módulo de Classe no Excel com VBA
Controlando os Eventos do Objeto Application com Classe
Como bloquear a alteração de nome das planilhas
Classe para restringir caracteres, letras e aplicar Máscaras em TextBoxes (CPF, CNPJ, CEP, Celular, Datas, Números, Moeda...)
Como usar Calendário para todas as Planilhas do Excel
Como replicar uso de Calendário para diversos UserForms
Menu Lateral com Label - Como usar os Eventos MouseMove e MouseDown corretamente
Menu Lateral com Label - Criando botões com ícones
TextBox - Usando o MouseDown para personalizar TextBox
Controles Comuns do Windows (ListView, TreeView e outros)
Introducao
ListView 01 - Como carregar com dados
ListView 02 - Tipos de visualizações
ListView 03 - Como carregar o Listview com dados de Planilhas
ListView 04 - Como destacar SubItems no Listview
ListView 05 - Como incluir imagens no Listview
ListView 06 - Como inserir imagens com base em condições
ListView 07 - Explorando as Propriedades do Listview
ListView 08 - Como descarregar todos os dados para um Planilha do Excel
ListView 09 - Como carregar dados do Listview para Textboxes
ListView 10 - Como adicionar novos dados ao Listview
ListView 11 - Como Alterar dados do Listview
ListView 12 - Como atualizar os ícones do Listview
ListView 13 - Como remover itens do Listview
Interagindo com outros aplicativos
Introdução ao Módulo
Outlook - Como enviar e-mail via VBA
Outlook - Enviar e-mails em Loop e com análise de condições
Outlook - Enviar e-mail para uma lista de contatos
Outlook - Como enviar Tabela no Corpo do E-mail
Outlook - Como enviar imagens no corpo do E-mail
Outlook - Código para abrir o Outlook (Dicas relevantes de uso)
Outlook - Como extrair dados da caixa de entrada de e-mails do Outlook para o Excel
Outlook - Como extrair qualquer informação do Outlook para Excel (Contatos, E-mails deletados, Caixa de saída, Rascunho, Anexos, Tarefas, Agendamentos...)
Outlook - Como alternar entre Pastas do Outlook
Outlook - Como realizar agendamentos de compromissos
Outlook - Como adicionar Recorrências ao agendamentos
Outlook - Como adicionar participantes aos agendamentos
Outlook - Como importar todos os agendamentos do Outlook para o Excel
Outlook - Como Alterar agendamentos via VBA
Outlook - Como Excluir agendamentos via VBA
Projeto Outlook - Sistema de agendamento
PowerPoint - Como criar uma nova Apresentação e enviar dados do Excel
PowerPoint - Como exportar gráficos de Planilhas para uma Apresentações do PowerPoint
PowerPoint - Como executar uma Macro de uma Apresentação PowerPoint fechada
PowerPoint - Como abrir o arquivo no modo apresentação e controlar o tempo de transição entre Slides
Word - Como integrar o Word ao Excel
Word - Como criar novo Documento e salvar em Pastas do computador
Word - Trabalhando com Textos e Parágrafos
Word - Como inserir tabelas do Excel dentro de um Documento Word
Word - Como exportar gráfico do Excel para o Word
Word - Como abrir Documento Word para Edição
Word - Como substituir informações de um Documento Word
Word - Como criar vários Documentos Word à partir de uma Lista do Excel e salvá-los em Pastas
Word - Como inserir dados dentro de uma Tabela do Word
Word - Preenchendo uma tabela do Word com dados do Excel usando Array
Word - Como inserir imagens dentro de uma Tabela do Word
Word - Como preencher todos os campos de uma tabela com imagens
Web Scraping
Webscraping - Introdução
Webscraping com Query Tables
Webscraping com Query Tables - Varias Tabelas
Conhecendo a estrutura básica de Sites
Microsoft Access - Sistema Gerenciador de Banco de Dados
Introdução
Conhecendo o ambiente do MS Access (Interface) e criando nosso primeiro Banco de dados
Noções básicas de banco de dados
Tipos de dados
Chave Primária e Chave Estrangeira
Entidades, atributos e relacionamentos
Linguagem SQL e seus Comandos
Conectando o Excel ao Microsoft Access
Comando INSERT INTO em tabelas SEM relacionamentos
Comando INSERT INTO em tabelas COM relacionamentos
Comando INSERT INTO - Enviando da Planilha para Banco de dados
Comando INSERT INTO - Enviando do Formulário para Banco de dados
Comando SELECT - A estrutura SELECT-FROM-WHERE de consultas SQL básicas
Comando SELECT - Introduzindo o Objeto Recordset
Comando SELECT - Como listar os Nomes dos campos do Recordset
Comando SELECT - Como usar critérios condicionais em nossas consultas
Comando SELECT - Operadores de String (Caracteres de padrão especial - ' % _)
Comando SELECT - Operadores matemáticos de comparação lógica (<=, >, >=, =, e <>)
Comando SELECT - Operadores Lógicos (AND e OR)
Comando SELECT - O Operador de comparação BETWEEN (ENTRE intervalos de números e Datas)
Comando SELECT - Funções de Agregação (AVG - MIN - MAX - SUM - COUNT)
Comando SELECT - Agregação com Agrupamento (Cláusula GROUP BY)