Avançado. Visão geral do ambiente do VBA Retornar à planilha Excel - PDF
Download "Avançado. Visão geral do ambiente do VBA Retornar à planilha Excel"
1 Avançado Trabalhando com VBA Descubra a linguagem de programação do Microsoft Office e torne-se um expert no desenvolvimento de funções, macros e planilhas eletrônicas Nas edições anteriores da revista One Click, falamos um pouco a respeito da criação de macros e alguns aspectos básicos da utilização do Visual Basic Apllication no desenvolvimento de funções programadas e outras aplicações que necessitam de recursos avançados. Como você já sabe, o VBA é uma linguagem de programação que permite a resolução de problemas mais complexos dentro do Excel. No entanto, isso acaba exigindo uma maior dedicação por parte do usuário, pois tal linguagem requer um conhecimento mínimo em lógica de programação. Mas você deve estar se perguntando: será que vale a pena aprender a utilizar esse recurso em minhas planilhas eletrônicas mesmo não conhecendo nada de programação? É claro que sim pois, com a prática, você poderá criar sistemas complexos de cadastro de produtos, clientes e fornecedores, desenvolver planilhas para serem vendidas a empresas de pequeno e médio porte, além de outras soluções que vão depender apenas do seu nível de criatividade. Nesta edição, você aprenderá alguns aspectos avançados sobre esta poderosa ferramenta disponível no Excel para a criação de códigos VBA e poderá aumentar o seu nível de conhecimento dentro do aplicativo. Visão geral do ambiente do VBA Retornar à planilha Excel Salvar a planilha Instruções do VBA Planilhas e módulos ativos Comandos de execução do programa Área de trabalho
2 Os ícones de sua janela Na janela do Visual Basic, você pode visualizar três ícones que alteram o modo de visualização de sua estrutura: Exibir códigos: Exibe a janela de módulo que contém o código em VBA que está associado ao objeto selecionado. Exibir objeto: Vai alternar entre a janela do editor do Visual Basic e a janela original da aplicação com o objeto selecionado. Alternar pastas: Alterna a exibição da janela Explorer do projeto entre a hierarquia dos objetos e uma lista simples dos mesmos. Já suas pastas serão representadas por um tipo de ícone diferente, observe: VBA Project: Permite a abertura de todos os objetos de uma pasta de trabalho. (Pasta ) é o nome do arquivo que está sendo editado no momento. Ao gravar, será substituído pelo nome do arquivo. Podemos visualizar objetos tais como planilhas, formulários, módulos, entre outros. Pasta de trabalho: É a referência da pasta de trabalho que está aberta no momento, e também vai conter todos os eventos (procedimentos) pertencentes a essa pasta, tais como abrir, fechar, inicializar, etc. Plan: Exibe a folha de código com as rotinas para a planilha específica. Módulos: Abre uma tela com os códigos existentes para a criação de rotinas (macros) diversas para esta pasta de trabalho. Módulos de Classe: Vai abrir uma tela (página) com os módulos (rotinas) de classe desta aplicação. Objetos no VBA Antes de compreender o que é VBA, vamos entender o que são objetos. Temos vários objetos dentro de um aplicativo, por exemplo, uma barra de ferramentas, uma planilha aberta, uma caixa de texto, etc. Tudo isso é considerado um objeto. Portanto, o objeto é algo controlável por meio da linguagem VBA, sendo usado para a execução de tarefas do Excel. Toda vez que é informado ao VBA o que desejamos executar em sua interface, não nos referimos diretamente a um objeto, mas a uma coleção de objetos. Assim, temos de nos referir à coleção de objetos à qual ele pertence e depois ao item desta coleção o qual desejamos alterar. Por exemplo: WorkSheets (Pasta.xls ) Range ( A:C ).Select Workbooks () Os objetos no VBA formam uma hierarquia e, abaixo desses níveis, temos outros objetos, tais como: -Workbooks; - AddIns; Dica: - MenuBars; - ToolBar; - Windows. Para nos referirmos a eles, é necessário digitar a que coleção os mesmos pertencem e qual é o objeto, veja: Apllication.Woorkbooks( Minha Planilha ) Na maioria das vezes, fazemos este tipo de referência a uma planilha ou às suas células, portanto os objetos ativos podem ser: - ActiveCell; - ActiveDialog; - ActiveMenuBar; - ActivePrinter; - ActiveWindow; - ActiveChart; - ActiveX; - ActivePanel; - ActiveSheet; - ActiveWorkbook. Exemplo: Sub AlteraExibição() With Active Window.DisplayGridlines = False.DisplayHeadings = False.Zoom = 75 End With End Sub Logo depois de criar o seu projeto no VBA, tudo o que você mais deseja é testá-lo, não é mesmo? Para isso, basta clicar no botão Executar localizado na barra de ferramentas do editor do programa e pressionar a seqüência de teclas Alt + F para voltar à janela do Excel e verificar o resultado final do seu trabalho. Assim, você conseguirá muito mais agilidade e praticidade no momento de criar macros, programas e outras aplicações que utilizam códigos e funções avançadas em sua execução
3 Avançado O editor do VBA Com certeza, você deve conhecer um amigo ou até mesmo um parente que passou anos exercendo uma mesma função dentro de uma empresa e ficou se perguntando como ele nunca enjoou de realizar a mesma tarefa todo esse tempo. Pra falar a verdade, não podemos dizer que ele nunca enjoou de fazer a mesma coisa todos os dias. A realidade é que ele acabou se acostumando com essa rotina. O mesmo acontece com os usuários de computador que passam horas usando programas para desenvolver seus trabalhos e atividades diárias, e não fazem idéia do potencial que se esconde por trás das ferramentas Microsoft Office. Um dos exemplos mais comuns é o editor do VBA que a maioria dos usuários nunca nem se quer teve a curiosidade de abrir e conhecer suas funções. Então, o que você acha de dar uma espiadinha na janela desse incrível editor? Vamos lá? Como programar Para se tornar um expert em VBA, é necessário primeiramente que todo usuário inicie o seu trabalho criando programas com códigos e instruções simples. Isso certamente irá facilitar e melhorar a assimilação dos comandos utilizados pela linguagem e o ajudará a aprimorar suas técnicas de programação. No exemplo a seguir, você aprenderá a confeccionar uma simples macro que calcula o número de horas trabalhadas de um funcionário de uma empresa. Confira! Acesse o editor do VBA, clique no menu Ferramentas/Macros e, em seguida, selecione a opção Editor do Visual Basic. Para acessar o editor do VBA no Excel, clique no menu Ferramentas, escolha Macros e, em seguida, selecione Editor do Visual Basic. Será aberta automaticamente pelo programa uma janela que o levará ao ambiente de codificação de programas, que também é acessado com as teclas Ctrl + F. Como podemos notar, não há nenhum projeto carregado. Clique duas vezes na planilha para abrir um novo projeto. Em seguida, com a janela aberta na tela do seu computador, digite as seguintes linhas de código: Sub CalcPay () On Error GoTo HandleError Dim hours Dim hourlypay Dim payperweek hours = InputBox( Digite o número de horas trabalhadas, Horas trabalhadas ) hourlypay = InputBox ( Digite o valor da hora, Valor ) payperweek = CCur (hours * hourlypay) MsgBox Valor: & Format (payperweek, S##,##0.00,, Total Pay HandleError: End Sub Pronto, agora é só salvar o seu trabalho e clicar no botão Executar para testar a funcionalidade do programa. Viu como é fácil?
4 Os comandos do VBA O Visual Basic Apllication ou VBA, como é mais conhecido, possui um número muito grande de comandos e instruções que são utilizados para codificar e executar uma determinada tarefa no Excel. Neste exemplo, vamos demonstrar algumas das muitas utilizações de dois comandos específicos: o Active e o Select. Acompanhe: Select: seleciona células da planilha por meio de um Range, ou seja, de um intervalo de seleção. A sintaxe para o comando é a seguinte: Range ( A:B6 ). Select. Para testar, insira um novo módulo e digite o código acima. O comando fez com que uma certa quantidade de células da planilha ficassem selecionadas, tudo isso graças à instrução Range, que demarca o espaço entre as células A até B6, como mostra a figura. Active: posiciona o cursor em uma determinada célula da sua planilha. Sua sintaxe é a seguinte: Range ( B ).Active. Para testar o comando, substitua o código do Select pelo citado neste passo. 4 Execute o programa. Como você pode perceber, o comando fez com que o cursor se posicionasse diretamente na célula B. Você pode incluir esse comando em um programa para encontrar uma célula vital.
5 Avançado Programando em VBA Criar um programa em qualquer linguagem de programação é uma tarefa que requer um pouco de estudo e dedicação. Por exemplo, se você tem um cliente que quer implantar uma solução simples para cadastrar os clientes, fornecedores ou até mesmo compradores da sua empresa e fazer o controle do seu fluxo de caixa, então o primei- ro passo é estudar as informações que devem ser disponibilizadas nessa planilha. É importante lembrar que você passará mais tempo planejando o programa do que criando a sua codificação. Isso prevenirá futuros erros no sistema e eventuais falhas no programa, ou seja, vale a pena gastar um pouco mais de tempo desenvolvendo o projeto e menos dias na sua confecção. Agora é o momento de você começar a criar o nosso primeiro programa no VBA. Este exemplo é muito básico e poderá ser executado através do comando ActiveCell.RC. A primeira parte desse comando torna ativa uma determinada célula. A segunda parte, RC, representa a célula que será ativada, sendo que R (Row ) significa linha e, C (Column ), coluna. Crie uma planilha qualquer no Excel e, em seguida, acesse o menu Ferramentas, Macro e Gravar nova Macro. Digite um nome para a sua macro (neste caso, usaremos teste ) e confirme com um simples clique no botão OK. Em seguida, vamos acessar o menu Ferramentas, Macro e clicar no editor do Visual Basic para prosseguir. 4 Na tela do VBA, dê um duplo clique na pasta Módulo e depois escolha a opção Módulo para abrir a tela de edição. 5 O próximo passo é incluir o comando ActiveCell.FormulaRC = Teste VBA no seu programa. 6 Clique no botão Executar e veja o que acontece com a planilha. Esse é apenas um exemplo básico do que pode ser feito em VBA.
6 Criando uma macro que verifica o CPF Trabalhar com macros no VBA é uma tarefa bem simples e rápida de ser executada. No exemplo a seguir, vamos criar uma macro que verifica se os números de CPF (Cadastro de Pessoa Física) de uma planilha de dados e analisar se os códigos digitados são válidos. O primeiro passo é abrir a janela do editor do VBA, pressionando as teclas Alt + F ou selecionado o menu Ferramenta/Macro/Editor do Visual Basic. Resto = (Soma Mod) If (Resto <= ) Then DV = 0 Else DV = Resto Soma = ((d * ) + (d * 0) + (d * 9) + (d4 * 8) + (d5 * 7) + (d6 * 6) + (d7 * 5) + (d8 * 4) + (d9 * ) + (DV * ) Resto = (Soma Mod) If (Resto <= ) Then DV = 0 Else DV = Resto If ((DV <> d0) Or (DV <> d)) Then TestaCPF = Inválido Else TestaCPF = Válido End Function 4 5 De volta à janela do Excel, digite nas células que armazenarão os resultados de sua verificação a seguinte fórmula: =TestaCPF(Célula). É importante lembrar que cada célula digitada na instrução fará referência à célula cujo CPF foi digitado. Exemplo: =TestaCPF(A). Em seguida, com a janela do editor aberta, digite as instruções a seguir: Public Function TestaCPF(CPF As String) As String Dim d, d, d, d4, d5, d6, d7, d8, d9, d0, d As Integer Dim Soma, Soma, Resto As Integer Dim DV, DV As Integer If Not (IsNull (CPF)) Then d= Val (Mid$ (CPF,,)) d= Val (Mid$ (CPF,,)) d= Val (Mid$ (CPF,,)) d4= Val (Mid$ (CPF, 4,)) d5= Val (Mid$ (CPF, 5,)) d6= Val (Mid$ (CPF, 6,)) d7= Val (Mid$ (CPF, 7,)) d8= Val (Mid$ (CPF, 8,)) d9= Val (Mid$ (CPF, 9,)) d0= Val (Mid$ (CPF, 0,)) d= Val (Mid$ (CPF,,)) Soma = ((d * 0) + (d * 9) + (d * 8) + (d4 * 7) + (d5 * 6) + (d6 * 5) + (d7 * 4) + (d8 * ) + (d9 * )) Agora salve as instruções, clicando no menu Arquivo/Salvar e pressione as teclas Alt + F para retornar ao Excel. Pronto, agora você já sabe criar um programinha que verifica os números de 6 CPF e retorna se estes são válidos ou não. E poderá utilizá-lo para facilitar e melhorar a sua rotina de trabalho no Excel.
1) Mostrando uma mensagem. 10 exemplos de macros essenciais no Excel. Este conteúdo faz parte da série: Excel VBA Ver 6 posts dessa série
Este conteúdo faz parte da série: Excel VBA Ver 6 posts dessa série Para aproveitar toda a potencia que o Excel possui, é indispensável a utilização de macros. Macro poder ser definida como uma serie de
Enunciado: Caderno 4, Ficha 2 Offset Exercício extra Escreva uma macro que troca o conteúdo da célula activa com o valor da célula à sua direita. Exº: Antes de correr a macro: Resolução: Instrução para
Crie uma folha de cálculo para registo de dados com Excel e VBA.
Crie uma folha de cálculo para registo de dados com Excel e VBA. O poder do VBA tirou das mãos de grandes especialistas em programação a capacidade de automatizar tarefas diárias ou de maior frequência
Tipos de Referência. Referência Relativa $A$1. Referência Absoluta. Referência Mista. $A1 ou A$1
Tipos de Referência Referência Relativa Referência Absoluta Referência Mista Quando o contéudo das células é copiado há alteração tanto na linha quanto na coluna. Refere-se às células como posições fixas
TIC Excel Tecnologias da informação e comunicação Módulo n.º 1 (32 horas) Folha de cálculo MS Excel Módulo n.º 2 (32 horas) Gestão de bases de dados MS Access Módulo n.º 3 (36 horas) Páginas web Avaliação
Criando a sua própria função
São diversas as possibilidades de aplicação do Excel ao nosso fluxo de trabalho. Uma das mais interessantes é a criação das nossas próprias funções na ferramenta, o que nos permite economizar tempo na
Software Luciana
Software Luciana http://intervox.nce.ufrj.br/~beatriz/ O projeto microfênix foi criado pelo professor Antonio Borges, no NCE/UFRJ, em 2004/6, para facilitar o uso do computador pelos portadores de deficiência
Sumário. Parte I Criação e formatação de pastas de trabalho. Introdução... xiii. Defina uma pasta de trabalho... 3
Sumário i Introdução........................................ xiii A quem se destina este livro............................... xiii A abordagem Passo a Passo................................ xiii Como baixar
VBA USANDO TABELA DO WORD COMO BANDO DE DADOS
VBA USANDO TABELA DO WORD COMO BANDO DE DADOS PREENCHENDO UMA TABELA ATRAVÉS DE UM USERFORM Nível: Avançado w w w. t u t o r i a i s w o r d. c o m ÍNDICE O QUE É VBA?... 3 OBJETIVO DESTE EBOOK.... 4 AUTOR...
Microsoft Excel Parte 06. Índice Formulários Personalizados... 2 Caixa de Combinação... 2 Função =Índice... 3 Botão de Opção... 4 Caixa de Grupo...
Microsoft Excel Parte 06 Índice Formulários Personalizados... 2 Caixa de Combinação... 2 Função =Índice... 3 Botão de Opção... 4 Caixa de Grupo... 6 Formulários Personalizados Criando formulários personalizados,
Procedimento Interno. COMO RESOLVER PROBLEMAS DE BOOT (Windows 7) Versão: 00 Data: 21/05/2015 Revisão: Autor: Fabrício dos S.
Procedimento Interno COMO RESOLVER PROBLEMAS DE BOOT (Windows 7) Versão: 00 Data: 21/05/2015 Revisão: Autor: Fabrício dos S. Santana Sumário 1. Objetivo... 3 2. Abrangência.... 3 3. Procedimento.... 3
MANUAL DO USUÁRIO v.1.0
MANUAL DO USUÁRIO v.1.0 Copyright 2007-2009 Bichara Tecnologia Manual elaborado por: Bichara Tecnologia www.bichara.com.br VoIPzilla MegaVoz Bichara Tecnologia pág. 1 Índice 1. Introdução...3 1.1 O que
São tantas funções e possibilidades que é bem provável que você esteja perdendo mais tempo do que gostaria para fazer uma planilha bem feita.
Se você já usou ou usa o Excel, sabe que ele tem uma infinidade de funcionalidades. São tantas funções e possibilidades que é bem provável que você esteja perdendo mais tempo do que gostaria para fazer
Um programa awk contém uma seqüência de padrões (expressões regulares) e ações da seguinte forma:
Awk (linguagem de programação) Awk é um grande utilitário de interpretação da linguagem de programação awk para manipulação de dados e texto de programação em shell script, nos quais é bastante utilizado
Manual do Usuário Fechadura Mundi Fechadura Mundi
Fechadura Mundi 4040 www.pontodigitalnetwork.com.br Sumário 1.Especificações Técnicas...1 2.Visão Geral...2 2.1.Visão Frontal...2 2.2.Visão Traseira...3 3.Cadastrar Administrador...4 4.Registrar digital
1 Criptografando arquivos em um arquivo zip com o menu de contexto
1 Criptografando arquivos em um arquivo zip com o menu de contexto Selecione o(s) documento(s) que deseja adicionar ao arquivo.zip clicando com o botão direito sobre eles: no menu de contexto, selecione
Soluções. Unidade: Vendas C/R Tópico: CRM
Soluções Unidade: Vendas C/R Tópico: CRM Ao concluir este exercício, você estará apto a: Criar, processar e duplicar atividades Gerenciar atividades recorrentes Criar uma cotação de vendas Copiar uma cotação
TUTORIAL. Formatação condicional no QGIS: um exemplo de simbologia baseada em regra QGIS.
TUTORIAL Formatação condicional no QGIS: um exemplo de simbologia baseada em regra QGIS www.processamentodigital.com.br O Processamento Digital é um Canal de Conteúdo GEO oferecido pela HEX Tecnologias
Excel. Aula Prática n o 6 VBA. 1. Inicie o Microsoft Excel e abra o ficheiro "Excel_6" que se encontra no directório APROG.
Excel Aula Prática n o 6 VBA 1. Inicie o Microsoft Excel e abra o ficheiro "Excel_6" que se encontra no directório APROG. 2. Na folha "Aposta" deve ser criada uma tabela contendo os números de uma aposta
Corretor de Dados 1 / 10
Corretor de Dados 1 / 10 Programa Operação Informações importantes Messagens de erro Sobre O objetivo do programa é permitir a correção do conteúdo de campos de tabelas do Access. Importando o formulário
Word 2010 ELABORADO POR MARCO SOARES 1
Word 2010 ELABORADO POR MARCO SOARES 1 ELABORADO POR MARCO SOARES 2 Word 2010 Ao abrir o word aparece uma janela com um documento vazio aberto ELABORADO POR MARCO SOARES 3 Preencher um documento com texto
2. Exercício: Reforma de uma casa
2. Exercício: Reforma de uma casa Parte 1 Criação do Projeto Crie um novo projeto chamado Reforma de uma Casa. Configuração do Calendário Clique na guia Projeto > Alterar Período de Trabalho. Clique na
Trabalho final Formulário com VBA
Trabalho final Formulário com VBA Excel E i s n t t e c n o l o g i a 12-07- 2 0 1 4 Conteúdo Introdução... 2 O campo de introdução idade (txtidade)... 5 O campo de introdução sexo... 6 O campo de introdução
Atalhos. Mike McBride Jost Schenck Tradução: Lisiane Sztoltz
Mike McBride Jost Schenck Tradução: Lisiane Sztoltz 2 Conteúdo 1 Atalhos 4 1.1 Introdução.......................................... 4 1.2 Atalhos Padrão e Atalhos Globais............................. 4